StringGadget in ToolBar

Anfängerfragen zum Programmieren mit PureBasic.
Jake
Beiträge: 121
Registriert: 28.05.2005 04:10
Wohnort: Berlin

StringGadget in ToolBar

Beitrag von Jake »

Kann ich irgendwie ein StringGadget in eine ToolBar einfügen?
Wenn ich ein StringGadget einfach dort positioniere wird es zwar angezeigt, jedoch kann ich dort nichts reinschreiben.
MfG Jake
Benutzeravatar
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

Beitrag von ts-soft »

Probiere es mal mit SetParent_(GadgetID(0), GadgetID(1))
http://msdn.microsoft.com/library/defau ... parent.asp
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.
Bild
Jake
Beiträge: 121
Registriert: 28.05.2005 04:10
Wohnort: Berlin

Beitrag von Jake »

Der Tipp wahr schonmal sehr gut. Der Text im StringGadget läßt sich jetzt editieren.

Code: Alles auswählen

;;;;; ToolBar Test
Enumeration
	#MainWnd
	#ToolBar
	#New
	#Search
	#Editor
EndEnumeration

;Structure 


OpenWindow(#MainWnd,0,0,300,200,#PB_Window_ScreenCentered|#PB_Window_SystemMenu,"ToolBar Test")
CreateGadgetList(WindowID(#MainWnd))
	CreateToolBar(#ToolBar,WindowID(#MainWnd))
		ToolBarStandardButton(#New,#PB_ToolBarIcon_New)
		StringGadget(#Search,25,2,50,18,"")
		SetParent_(GadgetID(#Search),ToolBarID(#ToolBar))
	EditorGadget(#Editor,0,28,300,200)

Repeat
	Select WaitWindowEvent()
	Case #PB_Event_CloseWindow
		CloseWindow(#MainWnd)
		End
	Case #PB_Event_Gadget
		Select EventGadget()
		Case #Search
			Select EventType()
			Case #PB_EventType_Change
				SetGadgetText(#Editor,GetGadgetText(#Search))
			EndSelect
		EndSelect
	Case #PB_Event_Menu
		Select EventMenu()
		Case #New
			SetGadgetText(#Search,"")
			SetGadgetText(#Editor,"")
		EndSelect
	EndSelect
ForEver
Wäre schön wenn das StringGadget jetzt auch noch zur ToolBar gehören würde.
Habe mir mal angesehen wie man mit WinAPI eine ToolBar erstellt, aber das ist recht aufwendig und auch sehr umfangreich. Da brauche ich mindestens einen Tag um das alles zu lesen was da so zu Toolbars in der MSDN steht. Na mal sehen.

Fast vergessen, der Code ist für PB4! Wegen der ToolBarID().
MfG Jake
Benutzeravatar
Hroudtwolf
Beiträge: 1416
Registriert: 30.10.2004 23:33
Kontaktdaten:

Beitrag von Hroudtwolf »

Wäre schön wenn das StringGadget jetzt auch noch zur ToolBar gehören würde.
Es gehört jetzt zur Toolbar.
Das Elternfenster des Stringgadget ist nun die Toolbarleiste.
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

Versuch dich mal an der Rebar. Die ist zwar etwas umstaendlicher,
dafuer sind dann auch die Moeglichkeiten viel groesser.

Beispiele gibt es hier und im Englischen Forum.
Jake
Beiträge: 121
Registriert: 28.05.2005 04:10
Wohnort: Berlin

Beitrag von Jake »

Hroudtwolf hat geschrieben:Es gehört jetzt zur Toolbar.
Das Elternfenster des Stringgadget ist nun die Toolbarleiste.
Das reicht leider nicht. Der Funktionsumfang einer ToolBar ist weitaus größer und das StringGadget wird darin nicht aufgenommen. Zum Beispiel wird bei den von der ToolBar erzeugten Messages das StringGadget nicht mit einbezogen (über #PB_Event_Gadget kann man die Events natürlich verarbeiten).
hallodri hat geschrieben:Versuch dich mal an der Rebar. Die ist zwar etwas umstaendlicher,
dafuer sind dann auch die Moeglichkeiten viel groesser.
Werde ich mir mal genauer ansehen. Beispiele hab ich nur ein einziges im englischen Forum gefunden.
http://forums.purebasic.com/english/vie ... reaterebar
MfG Jake
Antworten