vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
NEU! sevCoolbar 3.0 - Professionelle Toolbars im modernen Design!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Fortgeschrittene Programmierung
Re: Schneller Linien zeichnen 
Autor: unbekannt
Datum: 07.05.02 18:46

Hi,

das geht so:

Private Declare Function SelectObject Lib "gdi32" _
    (ByVal hDC As Long, ByVal hObject As Long) As Long
 
Private Declare Function MoveToEx Lib "gdi32" _
    (ByVal hDC As Long, ByVal x As Long, ByVal y As Long, _
     lpPoint As Any) As Long 'Achtung: Änderung von POINTAPI auf ANY!!!
 
Private Declare Function LineTo Lib "gdi32" _
    (ByVal hDC As Long, ByVal x As Long, ByVal y As Long) As Long
 
Private Declare Function DeleteObject Lib "gdi32" _
    (ByVal hObject As Long) As Long
 
Private Declare Function CreatePen Lib "gdi32" _
    (ByVal nPenStyle As Long, ByVal nWidth As Long, _
     ByVal crColor As Long) As Long
 
 
Private Const PS_SOLID = 0
 
'DrawLines: Zeichnet eine Linie in den Gerätekontext
'Parameter: vx = Left Position des Startpunkts
'           vy = Top  Position des Startpunkts
'           bx = Ziehen bis x-Wert
'           by = Ziehen bis y-Wert
'           nS = Linienstärke
'           nC = Linienfarbe
'(c)Lordchen vb@rchiv.de
Private Sub DrawLines(ByVal vx As Long, ByVal vy As Long, _
                      ByVal bx As Long, ByVal by As Long, _
                      ByVal nS As Long, ByVal nC As Long)
   Dim hOldPen As Long
   Dim hPen As Long
   Dim hDC As Long
 
   hDC = Me.hDC
 
   hOldPen = SelectObject(hDC, CreatePen(PS_SOLID, nS, nC))
   MoveToEx hDC, vx, xy, ByVal 0&
   LineTo hDC, bx, by
 
   hPen = SelectObject(hDC, hOldPen)
   DeleteObject hPen
End Sub
 
Private Sub Form_Load()
   AutoRedraw = True
   DrawLines 10, 10, 100, 100, 1, RGB(255, 0, 0)
End Sub
Aber bitte alle Angaben in Pixel!

cu
Lordchen
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Schneller Linien zeichnen96T.C.McQueen07.05.02 15:40
Re: Schneller Linien zeichnen394unbekannt07.05.02 18:46
Übrigens ein Ausschnitt aus VBEx32.DLL in VB umgesetzt ...348unbekannt07.05.02 18:58
Dacht ich mir's doch! (oT)408ModeratorMoni07.05.02 19:02
Vielleicht war in der Babymilch für Klein-Lordchen zuviel Wi...369unbekannt07.05.02 19:33
??? Zählst Du rückwärts ???357ModeratorMoni07.05.02 19:38
Wie kommst Du auf 10 *staun* oT301unbekannt07.05.02 20:28
Re: Wie kommst Du auf 10 *staun* oT460ModeratorMoni07.05.02 20:33
Thks ....514unbekannt07.05.02 20:38
Nö - war wie üblich Gutedel (oT)315ModeratorMoni07.05.02 23:01
Re: Nö - war wie üblich Gutedel (oT)370unbekannt07.05.02 23:19
Ha - Du glaubsch doch net ...374ModeratorMoni07.05.02 23:33
Un jetz der Rhöner...390ModeratorDieter07.05.02 23:46
Re: Ha - Du glaubsch doch net ...359unbekannt07.05.02 23:51
Re: Ha - Du glaubsch doch net ...304ModeratorMoni08.05.02 00:03
Lach ... .-))299unbekannt08.05.02 00:38
Re: Lach ... .-)) Lacht selber50T.C.McQueen08.05.02 18:43
Nana, Deine Frage wurde meisterlich beantwortet! 339unbekannt08.05.02 18:48

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel