Multiline-Textboxen, Richtextboxen oder auch MDI-Forms haben alle etwas gemeinsam. Bei Bedarf können hier Scrollbalken angezeigt werden. Die Standard-Forms besitzen eine solche Eigenschaft nicht, was oftmals ägerlich ist - und zwar immer dann, wenn die Form durch den Anwender verkleinert wird, und so nicht mehr alle Objekte im sichtbaren Bereich der Form angezeigt werden können.
Voraussetzungen: Der gesamte Code, der zum automatischen Ein-/Ausblenden der Scrollbars benötigt wird, befindet sich im Resize-Ereignis der Form. ' ScrollBalken bei Bedarf anzeigen Private Sub Form_Resize() Dim hVis As Boolean Dim vHis As Boolean If Me.WindowState <> 1 Then ' nur wenn Form nicht minimiert ist ' wenn die Form kleiner als die PictureBox ist ' entsprechend vertik. bzw. horiz. ScrollBars anzeigen VScroll1.Visible = (Picture1.Height > Me.ScaleHeight) HScroll1.Visible = (Picture1.Width > Me.ScaleWidth) Picture2.BorderStyle = 0 Picture2.Visible = HScroll1.Visible Or VScroll1.Visible ' Breite des horizontalen Scrollbalkens HScroll1.Width = Me.ScaleWidth ' Höhe des vertikalen Scrollbalkens VScroll1.Height = Me.ScaleHeight ' Scrollbalken positionieren HScroll1.Left = 0 HScroll1.Top = Me.ScaleHeight - HScroll1.Height VScroll1.Left = Me.ScaleWidth - VScroll1.Width VScroll1.Top = 0 Picture2.Left = Me.ScaleWidth - VScroll1.Width Picture2.Top = Me.ScaleHeight - HScroll1.Height HScroll1.Width = Picture2.Left VScroll1.Height = Picture2.Top ' Min/Max-Eigenschaften aktualisieren VScroll1.Max = (Picture1.Height - Me.ScaleHeight) + _ HScroll1.Height HScroll1.Max = (Picture1.Width - Me.ScaleWidth) + _ VScroll1.Width End If End Sub Routinen, die das Scrollen der PictureBox übernehmen Private Sub HScroll1_Change() Picture1.Left = -HScroll1.Value End Sub Private Sub HScroll1_Scroll() Picture1.Left = -HScroll1.Value End Sub Private Sub VScroll1_Change() Picture1.Top = -VScroll1.Value End Sub Private Sub VScroll1_Scroll() Picture1.Top = -VScroll1.Value End Sub Am besten Sie schauen sich das kleine Beispielsprojekt an und probieren es einmal aus. Dieser Tipp wurde bereits 29.878 mal aufgerufen.
Anzeige
![]() ![]() ![]() (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
sevISDN 1.0 ![]() Überwachung aller eingehender Anrufe! Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Tipp des Monats ![]() Dieter Otter Beliebige Zeichen am Anfang und Ende eines Strings entfernen Mit der Trim-Funktion lassen sich nicht nur Leerzeichen, sondern bei Bedarf auch beliebige Zeichen entfernen. sevZIP40 Pro DLL ![]() Zippen und Unzippen wie die Profis! Mit nur wenigen Zeilen Code statten Sie Ihre Anwendungen ab sofort mit schnellen Zip- und Unzip-Funktionen aus. Hierbei lassen sich entweder einzelnen Dateien oder auch gesamte Ordner zippen bzw. entpacken. |
|||||||||||||||||
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. |