vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevAniGif - als kostenlose Vollversion auf unserer vb@rchiv CD Vol.5  
 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

VB.NET - Ein- und Umsteiger
Re: Titelleisten Gradient-Modul aus VB6 in Studio2005 einfügen? 
Autor: ModeratorDaveS (Moderator)
Datum: 27.05.06 17:21

Es gibt so einges zu beachten bei solchem Code.

Erstens, besser ein IntPtr als InPtr zu deklarieren, anstatt immer in Int32 umzuwandeln (oder zurück).
Das wird auch wichtiger werden bei 64Bit Platformen, won ein IntPtr nicht mehr ein Int32 ist.

Zweitens bekommst du in Paint() ein Graphicsobjekt, deshalb ist es nicht notwendig
ein neues anzulegen, aber wenn du das tust solltest du auch unbedingt am Ende .Dispose() aufrufen.

Und wenn du .GetHdc() benutzt hast solltest du das unbedingt mit .ReleaseHdc()
wieder freigeben. Solcher Code scheint vielleicht in Ordnung zu sein wenn man das einmal laufen lässt zu
gucken ob es klappt, aber hat viele Schwächen, die beim produktiven Einsatz
irgendwann klar werden.

    Private Declare Function DrawCaption Lib "user32.dll" (ByVal hWnd As _
      IntPtr, ByVal hDC As IntPtr, ByRef pcRect As RECT, ByVal un As Int32) As _
      Int32
 
 
    Private Sub Form1_Paint(ByVal sender As Object, ByVal e As _
      System.Windows.Forms.PaintEventArgs) Handles MyBase.Paint
        SetRect(r, 0, 0, Me.Width, tbarWidth)
        Dim hdc As IntPtr = e.Graphics.GetHdc()
        DrawCaption(Me.Handle, hdc, r, tbarColor)
        e.Graphics.ReleaseHdc(hdc)
    End Sub
Bleibt nur die Frage wie man Rahmen, Steuerkästchen usw hinkriegt...

________
Alle Angaben ohne Gewähr. Keine Haftung für Vorschläge, Tipps oder sonstige Hilfe, falls es schiefgeht, nur Zeit verschwendet oder man sonst nicht zufrieden ist

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Titelleisten Gradient-Modul aus VB6 in Studio2005 einfügen?1.161E60526.05.06 22:32
Re: Titelleisten Gradient-Modul aus VB6 in Studio2005 einfüg...891Wolf mit Schnul...27.05.06 16:00
Re: Titelleisten Gradient-Modul aus VB6 in Studio2005 einfüg...748ModeratorDaveS27.05.06 17:21
Re: Titelleisten Gradient-Modul aus VB6 in Studio2005 einfüg...855Wolf mit Schnul...27.05.06 18:48
Re: Titelleisten Gradient-Modul aus VB6 in Studio2005 einfüg...735ModeratorDaveS27.05.06 19:00
Re: Titelleisten Gradient-Modul aus VB6 in Studio2005 einfüg...713E60527.05.06 21:29
Re: Titelleisten Gradient-Modul aus VB6 in Studio2005 einfüg...742ModeratorDaveS27.05.06 21:41
Re: Titelleisten Gradient-Modul aus VB6 in Studio2005 einfüg...742E60528.05.06 01:45
Re: Titelleisten Gradient-Modul aus VB6 in Studio2005 einfüg...736Wolf mit Schnul...28.05.06 09:34
Re: Titelleisten Gradient-Modul aus VB6 in Studio2005 einfüg...878ModeratorDaveS28.05.06 10:03
Re: Titelleisten Gradient-Modul aus VB6 in Studio2005 einfüg...798Wolf mit Schnul...28.05.06 10:18
Re: Titelleisten Gradient-Modul aus VB6 in Studio2005 einfüg...748ModeratorDaveS28.05.06 10:34
Re: Titelleisten Gradient-Modul aus VB6 in Studio2005 einfüg...723E60504.06.06 03:59

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