16.05.2015 Views

Programowanie w C++ Borland Builder - Wyższa Szkoła Informatyki ...

Programowanie w C++ Borland Builder - Wyższa Szkoła Informatyki ...

Programowanie w C++ Borland Builder - Wyższa Szkoła Informatyki ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

hWnd, ID_Elem, hInstance, 0);<br />

Identyfikator ID_Elem jest potrzebny, gdy w jednym oknie<br />

znajduje się kilka elementów sterujących - pozwala na ich<br />

rozpoznawanie w programie. Sposób przekazywania informacji o<br />

kliknięciu klawisza przypomnę na przykładzie okienka<br />

komunikatów:<br />

if(IDOK==MessageBox(0, "", "", MB_OK)) ...<br />

IDOK to predefiniowany w Windows identyfikator klawisza [OK].<br />

Oto krótkie wyjaśnienie pozostałych elementów:<br />

10, 10, 30, 20, - współrzędne. x, y, szerokość, wysokość<br />

hWnd, - oznacznik okna macieżystego<br />

Przesuwanie i zmiana wielkości elementu sterującego.<br />

Funkcja MoveWindow() przesuwa okno we wskazane miejsce:<br />

MoveWindow(hKlawisz, 10, 10, 20, 30, TRUE);<br />

Ponieważ okno elementu sterującego ma zadane względne<br />

współrzędne w oknie macieżystym, gdy okno macierzyste zostanie<br />

przesunięte - element sterujący będzie przesunięty<br />

automatycznie. Również po zmianie rozmiarów okna macieżystego<br />

okno elementu sterującego zmienia położenie, zawsze jednakowe<br />

względem lewego górnego rogu.<br />

Usuwanie okna sterującego<br />

Okienko elementu sterującego możemy usunąć (jak i każde inne<br />

okna) przy pomocy funkcji:<br />

DestroyWindow(hKlawisz);<br />

Przekazywanie informacji do- i z- okna elementu sterującego<br />

Zdarzenie w oknie elementu sterującego - np. kliknięcie klawisza<br />

- powoduje wygenerowanie komunikatu WM_COMMAND. Towarzyszące<br />

komunikatowi parametry przenoszą istotne informacje:<br />

wParam<br />

lParam<br />

- identyfikator elementu sterującego,<br />

- dla wciśniętego klawisza będzie to BN_CLICKED.<br />

Niektóre komunikaty Windows mogą być kierowane do okna elementu<br />

sterującego i wymuszać pewne operacje. Dla przykładu komunikat<br />

WM_GETTEXTLENGTH przesłany do okienka edycyjnego typu Text Edit<br />

Box (element sterujący klasy EDIT) jest żądaniem podania<br />

długości tekstu wpisanego właśnie do okienka. Aby Windows<br />

wygenerowały komunikat i przesłały go do naszego elementu<br />

sterującego - musimy "poprosić" przy pomocy funkcji<br />

SendMessage() (WyślijKomunikat):<br />

- 407-

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!