Proste sprawy.
Utwórz nowy projekt. Nazwij go kurs1. Z palety komponentów wstaw
DXDraw na którym będzie wyświetlana grafika. Do formy wstaw przycisk.
Utwórz procedurę obsługującą zdarzenie onclick do tego przycisku.
Narysujemy kreskę. Można to zrobić w następujący sposób : przesunąć
kursor do pewnego punktu przy pomocy procedury moveto a następnie
narysować linie do innego punktu za pomocą procedury lineto, np.
dxdraw1.surface.canvas.moveto(15,250);
dxdraw1.surface.canvas.lineto(350,400);
Na końcu tej procedury należy pasowałoby dopisać dwie ważne rzeczy.
Procedurę release po to żeby się windows nie zawiesił. Kolejnym
krokiem będzie wrzucenie tego na ekran za pomocą procedury flip.
dxdraw1.surface.canvas.release;
dxdraw1.flip;
Spróbuj uruchomić program i naciśnij przycisk, powinna się pojawić
na ekranie kreska.
Trudniejsze sprawy
W tej części narysujemy na ekranie bitmapę.W tym celu : Utwórz nowy
projekt o nazwie kurs2. Wstaw komponent TDXDraw i TDXimagelist. Dzięki
komponentowi TDXimagelist będziesz mógł ładować wiele bitmap i
rysować je na wiele sposobów. Na początku ustaw w TDXimagelist właściwość
dxdraw na dxdraw1. Wstaw rysunek -należy wybrać właściwość items.
Później wcisnąć przycisk Add New. Następnie wybieramy właściwość
picture. Utwórz przycisk i utwórz zdarzenie onclick do tego przycisku.
Wstaw kod :
dxdraw1.dximagelist1.Items.Items[n].draw(dest,x,y,patternindex);
Procedura ta rysuje na ekranie obrazek o wybranych współrzędnych x i
y. Dest - Powierzchnia na której ma być rysowana bitmapa np.
dxdraw1.surface. N- Numer bitmapy która ma być wyświetlana.
Możesz zastosować też inną procedurę która te będzie rysowała
bitmapy ale obrócone. Np.
DrawRotate(Dest, X, Y, Width, Height, PatternIndex, CenterX, CenterY,
Angle);
Dest - . Dest - Powierzchnia na której ma być rysowana bitmapa np.
dxdraw1.surface
X i y - współrzędne
Width- szerokość
Height- wysokość
CenterX i CenterY- Punkt na ekranie wzglądem, którego ma być obracana
bitmapa.
Angle- Kąt o jaki ma być obrócona bitmapa.
Dariusz Łazowski
|