[ Pobierz całość w formacie PDF ]

Właściwości klasy zostały opisane w tabeli 13.3; klasa ta nie posiada żadnych
zdarzeń ani metod godnych wzmianki.
Tabela 13.3. Właściwości klasy TPen
Właściwość Przeznaczenie
Definiuje kolor linii
Określa uchwyt pióra ( ). Właściwość ta używana jest podczas bezpośrednich
wywołań funkcji GDI
Określa rodzaj operacji bitowej wykonywanej podczas kreślenia linii (kopiowanie,
inwersja bitów, suma modulo 2 itp.)
Określa styl linii (ciągła, przerywana, kropkowa, niewidoczna itp.)
Określa szerokość linii w pikselach
Wykorzystanie wymienionych właściwości nie wymaga w zasadzie komentarza. Za
pomocą poniższych instrukcji na ekranie zostanie nakreślona linia przerywana w kolo-
rze czerwonym:
Aby sprawdzić działanie tych instrukcji, najprościej jest wstawić do formularza przycisk
i wpisać powyższy kod w funkcji obsługi zdarzenia . Klikni�cie przycisku spo-
woduje wykonanie instrukcji, czyli wykreślenie linii w formularzu.
Opisana wyżej metoda może być również użyta dla innych przedstawionych w tym
rozdziale przykładów. Zauważ jednak, że przysłonięcie okienka formularza i jego
ponowne wyświetlenie powoduje usunięcie utworzonego rysunku. Dzieje się tak
dlatego, iż wykreślony rysunek jest tymczasowy i znika w chwili ponownego wyry-
sowania okienka formularza. Aby  utrwalić rysunek, powinieneś umieścić tworzące
go instrukcje w funkcji obsługi zdarzenia formularza. W takim przypadku
każde żądanie ponownego wyrysowania formularza będzie powodowało odtworzenie
rysunku.
494 Część III
Warto zwrócić uwag�, że linie kropkowane i przerywane mogą być kreślone wyłącz-
nie piórem o szerokości 1 piksela. Z kolei styl , definiujący lini� niewidoczną,
pozwala na kreślenie figur pozbawionych konturów.
Aby zbadać właściwości klasy , możesz umieścić w formularzu komponent
i odpowiednio zmodyfikować jego właściwość . Trik ten pozwala m.in. na łatwe
zbadanie efektów zmiany właściwości .
Pędzle
P�dzel (ang. brush) odpowiada za wypełnienie wn�trza wykreślonej figury. Każdy kre-
ślony prostokąt, elipsa czy też wielobok b�dzie automatycznie wypełniany wzorem
i kolorem zdefiniowanym przez bieżący p�dzel. Warto tu podkreślić, że wypełnienie
wcale nie musi być jednolite. Chociaż w wielu przypadkach tak właśnie jest, odpowied-
nie zdefiniowanie p�dzla umożliwia wypełnienie wn�trza figury regularnym wzorem
lub mapą bitową.
Do kontrolowania ustawień bieżącego p�dzla służy właściwość klasy ,
b�dąca obiektem klasy . Podobnie jak w przypadku klasy , z naszego punktu
widzenia interesujące są jedynie właściwości klasy, wyszczególnione w tabeli 13.4;
metody i zdarzenia tej klasy nie mają wi�kszego zastosowania.
Tabela 13.4. Właściwości klasy TBrush
Właściwość Przeznaczenie
Definiuje map� bitową używaną jako wzór wypełnienia. W systemie Windows 95
maksymalny rozmiar mapy wynosi 8�8 pikseli
Definiuje kolor wypełnienia
Określa uchwyt p�dzla ( ). Właściwość ta używana jest podczas
bezpośrednich wywołań funkcji GDI
Określa styl p�dzla. Predefiniowane style obejmują m.in. wypełnienie jednolite,
brak wypełnienia oraz kilka użytecznych wzorów
Właściwość przyjmuje domyślnie wartość , co oznacza wypełnienie jed-
nolitym kolorem. Użycie wypełnienia wymaga zmiany właściwości na wartość
określającą jeden z predefiniowanych wzorów ( , , ,
i , czyli kreskowanie poziome, pionowe i ukośne oraz kratkowanie
i kratkowanie ukośne). Za pomocą trzech przedstawionych poniżej instrukcji można
wykreślić w formularzu koło wypełnione wzorem kratkowanym pod kątem 45 stopni.
Wynik wykonania tych instrukcji przedstawia rysunek 13.1.
W przypadku wypełnienia figury wzorem, właściwość p�dzla definiuje kolor
rysowanych przez niego linii. Z niezbyt jasnych powodów VCL automatycznie używa
w takiej sytuacji przezroczystego tła, tak wi�c tło wypełnienia b�dzie miało taki sam
Rozdział 13. f& Programowanie operacji graficznych495
Rysunek 13.1.
Koło wypełnione
wzorem
kratkowanym
kolor, jak tło okienka, w którym kreślona jest wypełniana figura. Aby si� o tym prze-
konać, rzuć okiem na rysunek 13.1 (zadanie to nieco utrudnia fakt, iż rysunek pre-
zentowany jest w tonacji szarości, jednak uruchomienie programu powinno rozwiać
Twoje wątpliwości). Jeśli chcesz jawnie wymusić kolor tła wypełnienia, musisz nie-
stety obejść funkcj� VCL przez bezpośrednie odwołanie do funkcji graficznych API. [ Pobierz całość w formacie PDF ]

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • leike.pev.pl