1.10 Menu okna
W tej lekcji przedstawię jak zrobić menu okna. Może najpierw w ogóle wyjaśnię czym jest to menu. Otóż, okna w windowsie mogą posiadać swoje menu, znajduje się ono pod paskiem tytułowym okna.

Dobrze wiemy już czym jest menu. Teraz zróbmy sobie takie menu na swoim oknie. Pierwszym krokiem jest utworzenie naszego menu w zasobach. Spójrzmy na przykład:
{
POPUP
{
MENUITEM
MENUITEM
MENUITEM
}
POPUP
{
MENUITEM
MENUITEM
MENUITEM
}
POPUP
{
MENUITEM
}
}
Tak piszemy strukturę menu w tekstowym edytorze Dev C++.
Najpierw zaczynamy od nazwy obiektu zasobów, czyli w moim przypadku "Moje_menu". Następnie piszemy typ danego zasobu, czyli MENU. Po napisaniu tego otwieramy ciało naszego menu pomiędzy klamrami "{", a "}", ma to wyglądać mniej więcej tak:
{
}
Teraz przystępujemy do tworzenia przycisków na naszym menu, stwórzmy sobie 2 przyciski, pierwszy o nazwie "Plik:, a drugi "Pomoc". Robi się to pisząc POPUP, a następnie wpisując ciąg znaków do wyświetlenia.
{
POPUP
POPUP
}
Następnie robimy menu tych przycisków, otwieramy klamry, rozpoczynające ich ciała.
{
POPUP
{
}
POPUP
{
}
}
Teraz pozostaje wstawiać nam przyciski. Piszemy MENUITEM, następnie ciąg znaków na przycisku, kolejno po przecinku numer identyfikacjyny przycisku. Każdy przycisk musi mieć swój niepowtarzalny numer, bo po numerach program rozróżnia jaki przycisk został naciśnięty.
{
POPUP
{
MENUITEM
MENUITEM
}
POPUP
{
MENUITEM
}
}
Oto efekt naszych działań:

Dobrze jest zaopatrzyć nasze menu w możliwość poruszania się po nim za pomocą klawiatury, należy odpowiednim przyciskom przypisać odpowiednie litery. W menu te litery będą podkreślone, a naciśnięcie przycisku z daną literą spowoduje naciśnięcie tego przycisku w menu. Aby podkreślić daną literę w menu musimy postawić przed nią znak "&". Spójrzmy na przykład:
{
POPUP
{
MENUITEM
MENUITEM
}
POPUP
{
MENUITEM
}
}
Spójrzmy na efekt:

Teraz wystarczy przypisać nazwę menu w jednym z pól w strukturze WNDCLASSEX:
wc.lpszMenuName=
...
No i to chyba tyle jeżeli chodzi o ogólne podstawy. Dalsza nauka podzielona jest na konkretne tematyczne działy.