Rubrik: Controls · Sonstiges | VB-Versionen: VB6 | 08.03.17 |
.NET Toolstrip Toolbar in VB6 nutzen Moderne .NET Framework Toolstrip Toolbar in VB6 einbinden | ||
Autor: fod | Bewertung: | Views: 6.804 |
ohne Homepage | System: Win7, Win8, Win10, Win11 | Beispielprojekt auf CD |
Um die moderne .NET Toolstrip Toolbar in VB6 Programmen einzubinden stelle ich hier eine .NET Dll mit COM INterop Interface zur Verfügung. Laden Sie die EMFToolbar herunter und entpacken sie das Zip-Archiv. Registrieren Sie die EMFToolBar.dll mit diesem Kommando:
regasm.exe EMFToolBar.dll /codebase
Die regasm.exe ist Bestandteil des .NET Frameworks
In VB6 steht jetzt unter Projects -> Components die EMFToolbar zur Verfügung.
Definieren Sie in Ihrem Projekt diesen Enum:
Public Enum ToolStripItemDisplayStyle None = 0 Text = 1 Image = 2 ImageAndText = 3 End Enum
Die Größe der Toolbar-Icons legen Sie hiermit fest:
EMFToolBarControl1.ImageScalingHeight = 32 EMFToolBarControl1.ImageScalingWidth = 32
Mit diesen Methoden beschicken Sie die Toolbar mit Toolbar-Buttons und Seperatoren:
EMFToolBarControl1.AddToolStripButton "buttonA", "Hallo Welt", _ "c:\temp\icon1.png", ToolStripItemDisplayStyle.ImageAndText EMFToolBarControl1.AddToolStripSeperator "Sep1" EMFToolBarControl1.AddToolStripButton "buttonB", "Guten Tag", _ "c:\temp\icon2.png", ToolStripItemDisplayStyle.ImageAndText
Zum Abfragen des gewählten Buttons müssen Sie das Event OnItemClicked definieren:
Private Sub EMFToolBarControl1_OnItemClicked(ByVal Name As String, ByVal Tag As Variant) MsgBox Name End Sub
Damit läuft in Ihrem VB6 Projekt die Toolstrip Toolbar aus dem .NET Framework!
Warum die Dll EMFToolbar.Dll heißt? Sie können anstatt der standardmäßig verwendeten .PNG Grafikdateien für die Toolbar-Symbole auch .EMF-Vektorgrafikdateien verwenden. Damit skalieren die Symbole in Ihrer Toolbar auf eine beliebige Größe. .EMF ist das weiter entwickelte .WMF-Grafikformat und kann im .NET Toolstrip verarbeitet werden - auch wenn die .NET Oberfläche es standardmäßig nicht anbietet. Getestet mit .NET Framework 4.61
Happy coding