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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

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 />

DlugTekstu = SendMessage(hEditWnd, WM_GETTEXTLENGHT, 0, 0);<br />

gdzie:<br />

hEditWnd jest identyfikatorem elementu - okienka edycyjnego<br />

[???]Robi na "szaro'?<br />

________________________________________________________________<br />

Podobnie jak opcje w menu - klawisze także mogą zostać<br />

udostępnione (ang. enable), bądź zablokowane (ang. disable).<br />

Jeśli hKlawisz będzie identyfikatorem elementu sterującego,<br />

można go udostępnić (1), bądź zablokować (0) przy pomocy<br />

funkcji:<br />

EnableWindow(hKlawisz, 0);<br />

EnableWindow(hKlawisz, 1);<br />

________________________________________________________________<br />

Typowy projekt dla środowiska Windows składa się z kilku (czasem<br />

kilkunastu) plików: .H, .MNU, .DLG, .RC, .DEF, .PRJ, .ICO, .BMP,<br />

itp. Kompilator zasobów generuje na podstawie tego "składu"<br />

końcowy plik aplikacji.<br />

------------------Plik MEDYT-01.H-------------------------------<br />

#define szAppName "MEDYT-01"<br />

#define ID_EDIT 200<br />

------------------Plik główny: MEDYT-01.CPP---------------------<br />

#include <br />

#include "EDIT.H"<br />

#pragma argused<br />

HWND hEditWnd;<br />

long FAR PASCAL WndProc (HWND, unsigned, WORD, LONG) ;<br />

- 403-

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

Saved successfully!

Ooh no, something went wrong!