Skocz do zawartości

[GDI] deklaracja hDC


Recommended Posts

Napisano

Mam pytanie jak zadeklarować hDC.
Potrzebne jest mi to do naryzowania prostej lini :] w GDI.
Używam funkcji LineTo();, i niewiem czy trzeba cos jeszcze. Wiem, żeby uzyskać hDC wystarczy funkcja GetDC();.
Prosze o jakiś przykład użycia funkcji LineTo();.

Pozdro :).

Napisano

Witam!

Zamieszczem poniżej bardzo prosty przykład wykorzystujący funkcję LineTo. Przykład jest w MASM więc będziesz sobie musiał to przetłumaczyć ;)

To oczywiście umiesczasz w procedurze obsługi okna:

LOCAL hDC: HDC
LOCAL ps: PAINTSTRUCT
      ......
.ELSEIF uMsg==WM_PAINT
      invoke BeginPaint, hWnd, addr ps
      mov hDC, eax
      invoke MoveToEx, hDC, 10, 10, NULL   
      invoke LineTo, hDC, 100, 10
      invoke EndPaint, hWnd, addr ps
.ELSE
      ......

Dla wyjaśnienia:
BeginPaint - zwaraca device context
MoveToEx - ustawia współrzędne
LineTo - rysuje linię do punktu o podanych współrzędnych
EndPaint - informuje system o zakończeniu malowania określonego okna

Gdyby coś jescze było niejasne to polecam GOOGLE. Tam na 100% znajdziesz odpowiedź.

Pozdrowienia

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gość
Odpowiedz...

×   Wkleiłeś zawartość bez formatowania.   Usuń formatowanie

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Utwórz nowe...