Toolbar mit Schaltflächen erstellen
Toolbar mit Schaltflächen erstellen
Hallo!
Ich wollte in eine Toolbar eine editierbare ComboBox (oder eben ein beliebiges anderes Gadget) legen, z.B für eine Art Word-Programm die Auswahlleiste für die Schriftart oder für einen Browser die Adressleiste. Diese sollte in ihren Funktionen nicht eingeschränkt sein, sondern wie normal funktionieren.
Weiß jemand, wie ich so etwas mache?
Suchfunktion habe ich schon genutzt, aber die Qualität der Suche ist ja bekannt und ich war noch nie sehr gut im Finden von Sachen, egal wo. Also bitte nicht böse sein, wenn die Lösung schon existiert und ich sie bloß nicht gefunden habe.
Ich wollte in eine Toolbar eine editierbare ComboBox (oder eben ein beliebiges anderes Gadget) legen, z.B für eine Art Word-Programm die Auswahlleiste für die Schriftart oder für einen Browser die Adressleiste. Diese sollte in ihren Funktionen nicht eingeschränkt sein, sondern wie normal funktionieren.
Weiß jemand, wie ich so etwas mache?
Suchfunktion habe ich schon genutzt, aber die Qualität der Suche ist ja bekannt und ich war noch nie sehr gut im Finden von Sachen, egal wo. Also bitte nicht böse sein, wenn die Lösung schon existiert und ich sie bloß nicht gefunden habe.
Win11 x64 | PB 6.20
Folgendes funktioniert mit Windows einwandfrei:
1. Erstell deine Toolbar
2. Erstell ein Containergadget
3. Plazier dein gewünschtes Gadget darauf
4. Verwende SetParent_(GadgetID(#Container), ToolbarID(#Toolbar))
5. Verwende ResizeGadget() um das Containergadget richtig zu plazieren
1. Erstell deine Toolbar
2. Erstell ein Containergadget
3. Plazier dein gewünschtes Gadget darauf
4. Verwende SetParent_(GadgetID(#Container), ToolbarID(#Toolbar))
5. Verwende ResizeGadget() um das Containergadget richtig zu plazieren
Bin nur noch sehr selten hier, bitte nur noch per PN kontaktieren
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Wenns für Windows ist:
Hab das Beispiel der Hilfe mal gepimped
Entscheidende Zeilen sind in ##### REMs
Code: Alles auswählen
If OpenWindow(0, 100, 200, 195, 260, "ToolBar example", #PB_Window_SystemMenu | #PB_Window_SizeGadget)
If CreateToolBar(0, WindowID(0))
ToolBarStandardButton(0, #PB_ToolBarIcon_New)
ToolBarStandardButton(1, #PB_ToolBarIcon_Open)
ToolBarStandardButton(2, #PB_ToolBarIcon_Save)
ToolBarSeparator()
ToolBarStandardButton(3, #PB_ToolBarIcon_Print)
ToolBarToolTip(0, 3, "Print")
ToolBarStandardButton(4, #PB_ToolBarIcon_Find)
ToolBarToolTip(0, 4, "Find a document")
ToolBarSeparator()
EndIf
; ######################################
; hier spielt die Musik
StringGadget(0, 130, 0, 50, 20, "Hallo")
SetParent_(GadgetID(0), ToolBarID(0))
; ###################################
If CreateMenu(0, WindowID(0))
MenuTitle("Project")
MenuItem(0, "New")
MenuItem(1, "Open")
MenuItem(2, "Save")
EndIf
;
; Attach our previously created ToolBar to this window
;
DisableToolBarButton(0, 2, 1) ; Disable the button '2'
;
; The event loop. A ToolBar event is like a Menu event (as tools are shortcut for menu the most
; of the time). This is handy, as if the ToolBar buttons and the MenuItem have the same ID, then
; the same operation can be done on both action without any adds..
;
Repeat
Event = WaitWindowEvent()
Select Event
Case #PB_Event_Menu
MessageRequester("Information", "ToolBar or Menu ID: "+Str(EventMenu()), 0)
Case #PB_Event_CloseWindow ; If the user has pressed on the close button
Quit = 1
EndSelect
Until Quit = 1
EndIf
End ; All the opened windows are closed automatically by PureBasic

Entscheidende Zeilen sind in ##### REMs
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Hab ja nur 2 Zeilen eingefügt, den Rest hat Fantaisia Software geschriebenmilan1612 hat geschrieben:Mensch Thomas, muss du immer gleich mit Code daherkommen?

PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
So bin ich ebenKiffi gefälschtes Zitat hat geschrieben:Deswegen hat es Thomas, der faule Sack, es nicht im Code aufgeführt.

Gruß
Thomas
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Gefälschtes von Thomas gefälschtes Kiffi-Zitat - Zitat hat geschrieben:Deswegen hat es der progressive Thomas, der als Innovationsmotor ständig
auf der Höhe der Zeit ist und aus diesem Grund auch nur das Neueste vom
Neuen benutzt, es nicht im Code aufgeführt.

Grüße ... Kiffi (der sich erst heute PB4.3 installiert hat)
a²+b²=mc²