Programmleiste

Hallo
hat sich eigentlich schon mal jmd Gedanken gemacht darüber,
sich in seinem Programm eine Menüleiste einzufügen, mit welcher Programme verknüpft und wieder gelöst werden können.
Es wäre doch praktisch, sich selbst in seinem Programm eine Leiste zu legen, von der aus man andere Programme starten kann.

Mit Leiste meine ich übrigens so eine Symbolleiste, wo sonst kopieren, Ausschneiden und andere unsinnige Sachen stehen.

Mfg Werner

Hallo Werner,

füge folgende Komponenten hinzu.
Microsoft Common Controls 6 (SP6)
kann aber auch sein das sich bei dir ne andere Version befindet. Dann nehme einfach die. Nun füge auf deine Form die Toolbar(Toolbar1) und die Imagalist (Imagelist1) ein.
Fülle die Imagelist, mit den Bildern die du brauchst! ( Für deine Eintraege die du hinzufügen willst.
Stelle unter den Eigenschaften der Toolbar (Rechtsklick auf die toolbar)die Imagelist ein. Einfach Eigenschaften und bei Imagelist die Imagelist1 auswaehlen.

So nun zu deinem Problem.

Ein Button fügst du wiefolgt hinzu
Toolbar.Buttons.Add [Index], [Key], [Caption], [Style], [Image]

Index = Ein Wert zum Indentifiziern
Key = Wert um zu wissen welcher Button gedrueckt wurde. Weisse ihm einen wert zu, den du dann später abfragst!Achte darauf das du die Indexgrenze nicht überschreitest! ( Kannst auch dazu nehmen um den Button an eine Stelle x zu schieben :smile:
Caption = Beschriftung des Buttons
Style = Aussehen -> Ein Wert von 0 bis 5
Image = Welches Bild soll angezeigt werden aus der Imagelist

Ein Button entfernst du wiefolgt
Toolbar1.Buttons.Remove Index

Die Toolbar kannst du ein oder ausblenden mit
Toolbar1.Visible = False/True

Wenn du im lfd. programm ein doppelklich auf die toolbar machst, so geht dann auch ein vordefiniertes Fenster auf wo du dies auch alles machen kannst :wink:

Auswerten kannst du die ereignisse dann über Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button)

Ein kleines Demo noch was dir 2 Schaltflächen hinzufügt

Private Sub Command1\_Click() '2 Buttons hinzufügen
 With Toolbar1
 .Buttons.Add 2, "c:\xyz.exe", , , 0
 .Buttons.Add 3, "c:\abc.exe", , , 0
 End With
End Sub

Private Sub Command2\_Click() 'Button entfernen
 Toolbar1.Buttons.Remove 1
End Sub

Private Sub Toolbar1\_ButtonClick(ByVal Button As MSComctlLib.Button) 'Auf Klick agieren
Dim Filename As String
 Select Case Button.Key
 Case "open"
 'Code für den Schluessel open
 Case "close"
 'Code für den Schluessel close
 Case Else
 Filename = Button.Key
 'Hier File dann starten etc.
 End Select
End Sub

MFG Alex

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hi
dankeschön, werds mal ausprobieren demnächst.
Wenn der Tag 64 Stunden hätte und ich arbeitslos wäre, könnte ich endlich alle meine Ideen verwirklichen *grins*

Mfg Werner