Home > Visual Basic Classic > Controls > Controls in einer StatusBar anzeigen

Controls in einer StatusBar anzeigen

Veröffentlicht am 19.08.2008 von Sebastian Krogolewski

Artikelinformationen

Sprache:
Visual Basic 6
Datenbank:
keine

Artikel speichern

del.icioMister WongGoogleLinkarenaYiggSpurlFurl

Artikel bewerten

Bewertng:2.00 / 5 (1 mal bewertet)

In der StatusBar kann man so manche Informationen zum aktuellen Anwendungszustand Anzeigen, aber Standardmäßig leider nur Text. Viele der heutigen Anwendungen benutzen die Statusbar um den Fortschritt beim Laden oder Speichern von Daten anzuzeigen. Um das auch im eigenen Programm einbauen zu können braucht man nur die Win Api Funktion SetParent aus der user32.dll.

 

Einbinden der Win API Funktion SetParent als SetParent aus der User32.Dll.

1
2
Private Declare Function SetParent Lib "user32" (ByVal hWndChild As Long, _
    ByVal hWndNewParent As Long) As Long

 

SetParent erwartet 2 Parameter:

hWndChild: das Handle des Controls dessen Parent control geändert werden soll.
hWndNewParent: das Handle des Controls, welches als neues Eltern control gesetzt wird.

 

VB Funktion
1
2
3
4
56
7
8
9
1011
12
13
14
Public Sub ControlIntoStatusBar(ByVal uControl As Control, ByVal uStatusBar As Control, _
                                ByVal uPanelIndex As Integer)
 
On Error Resume Next
    'Statusbar als neuen Parent für das Control setzen    Call SetParent(uControl.hWnd, uStatusBar.hWnd)
    
    'Positionsangaben müssen teilweise an die verschiedenen Controls einzeln
    'angepasst werden damit eine genaue Positionierung innerhalb eines Panels möglich ist
    uControl.Top = 50    uControl.Left = uStatusBar.Panels(uPanelIndex).Left
    uControl.Width = uStatusBar.Panels(uPanelIndex).Width
    uControl.Height = uStatusBar.Height - 80
End Sub

 

Mit dieser Funktion kann man nicht nur eine ProgressBar sondern auch ein Text oder Command Control einfügen.

 

Hinweis:

Die Steuerelemente werden nur deswegen als Control übergeben, damit es egal ist von welchem Typen das einzufügende Steuerelement ist und ob man die StatusBar aus den Microsoft Common Controls 5 (ComCtl32.ocx) oder Microsoft Common Controls 6 (MSComCtl.ocx) verwendet.

Downloads

Suchbegriffe

VB6, Visual Basic, Control in StatusBar, SetParent, ProgressBar in StatusBar

Suche