Gadget frage
- Knight_Rider_2000
- Beiträge: 145
- Registriert: 05.02.2007 20:46
- Kontaktdaten:
Gadget frage
Hi,
Ich wollt mal wissen ob ihr auch Gadgets für pb kennt die nicht in pb drinne sind und wie sie funktionieren? Mir sind die von pb langsam aber sicher zu wenig.
Ich wollt mal wissen ob ihr auch Gadgets für pb kennt die nicht in pb drinne sind und wie sie funktionieren? Mir sind die von pb langsam aber sicher zu wenig.
PB 4.20,Blitz3D 1.98,Microsoft Visual Studio 2005 Professional, Microsoft Visual Studio 2008 Professional
PB ja sehr universell einsetzbar.
Unter "Gadget erstellen mit PB4" (http://www.purebasic.fr/german/viewtopic.php?t=8071) findes Du Hilfe um selbst Gadget zu erstellen.
Fertige Lösungen unterscheiden sich darin wie sie funktionieren (Libs oder PB-Quellcodes (z.B. http://www.purebasic.fr/german/viewtopic.php?t=7982) lassen sich direkt einbinden für andere gibt es APIs oder COM)
Unter "Gadget erstellen mit PB4" (http://www.purebasic.fr/german/viewtopic.php?t=8071) findes Du Hilfe um selbst Gadget zu erstellen.
Fertige Lösungen unterscheiden sich darin wie sie funktionieren (Libs oder PB-Quellcodes (z.B. http://www.purebasic.fr/german/viewtopic.php?t=7982) lassen sich direkt einbinden für andere gibt es APIs oder COM)
- Fluid Byte
- Beiträge: 3110
- Registriert: 27.09.2006 22:06
- Wohnort: Berlin, Mitte
Re: Gadget frage
Ein Widerspruch in sich aber egal. Die einzigen die mir jetzt einfallen sind Hotkey- und Rebar Controls. Hotkey Controls sind praktisch nutzlos und Rebar Controls, sowie jedes andere Gadget was nicht nativ in PB enthalten ist, kann man über API ansteuern. Alles andere, wie z. B. auch das SplitterGadget, sind Ownerdrawn Controls und werden von Windows nicht unterstützt.Knight_Rider_2000 hat geschrieben:Ich wollt mal wissen ob ihr auch Gadgets für pb kennt die nicht in pb drinne sind ...
Das müsstest du mal näher erläutern...Knight_Rider_2000 hat geschrieben:Mir sind die von pb langsam aber sicher zu wenig.
Windows 10 Pro, 64-Bit / Outtakes | Derek
Es gab z.B. auch schon eine Art "WebGadget" (per COM wenn ich mich richtig erinnere) bevor es in PB integriert war.
Unter http://frabbing.de/_listview.html gibt es ein Gadget auf DLL-Basis.
Fluid Byte hat aber recht : Ich würde mich erst dann auf die Suche machen wenn ich konkreten Bedarf an einer Lösung ( z.B. http://www.purebasic.fr/german/viewtopic.php?t=12897) oder einer Technik-Studie für eigene Entwicklung hätte.
Unter http://frabbing.de/_listview.html gibt es ein Gadget auf DLL-Basis.
Fluid Byte hat aber recht : Ich würde mich erst dann auf die Suche machen wenn ich konkreten Bedarf an einer Lösung ( z.B. http://www.purebasic.fr/german/viewtopic.php?t=12897) oder einer Technik-Studie für eigene Entwicklung hätte.
- Knight_Rider_2000
- Beiträge: 145
- Registriert: 05.02.2007 20:46
- Kontaktdaten:
Grundsätzlich :
Es gibt Gadgets in PB,
es gibt Gadgets für PB
und es gibt Gadgets die sich aus PB heraus nutzen lassen - auch wenn sie nicht speziell dafür gemacht sind (z.B. DLLs).
Was genau meinst du mit Explorerleiste ?
edit :
Willst Du den Internet Explorer erweitern ?
Wenn Ja :
Bei einem kurzen Abstecher per Google bin ich bis zu dem Wort "COM" gekommen. Ab da wusste ich, dass es für mich keinen Sinn macht weiter zu lesen.
Für Firefox gibt es glaube ich Ähnliches etwas leichter.
Es gibt Gadgets in PB,
es gibt Gadgets für PB
und es gibt Gadgets die sich aus PB heraus nutzen lassen - auch wenn sie nicht speziell dafür gemacht sind (z.B. DLLs).
Was genau meinst du mit Explorerleiste ?
edit :
Willst Du den Internet Explorer erweitern ?
Wenn Ja :
Bei einem kurzen Abstecher per Google bin ich bis zu dem Wort "COM" gekommen. Ab da wusste ich, dass es für mich keinen Sinn macht weiter zu lesen.
Für Firefox gibt es glaube ich Ähnliches etwas leichter.
Zuletzt geändert von uweb am 09.05.2007 18:23, insgesamt 2-mal geändert.
- 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
Das ist das schöne beim Programmieren, was es nicht gibt, kannKnight_Rider_2000 hat geschrieben:Ich habe schon in ein pb programm sowas ähnliches wie die explorerleiste gesehen aber sowas gibt es ja nicht in pb
man programmiern

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.

- Knight_Rider_2000
- Beiträge: 145
- Registriert: 05.02.2007 20:46
- Kontaktdaten:
Wenn es nur so wie beim (aber nicht für den) Internet Explorer sein soll hilft Dir vielleicht folgendes Beispiel :
Du brachst PureRESIZE (unter user-libs auf http://www.purearea.net/pb/german/) um es laufen zu lassen.
Bitte entschuldige das Moster - ich habe einfach einen meiner Codes verwendet statt extra etwas zu erstellen.
Obwohl ich deshalb hier schon prügel bezogen habe denke ich es ist übersichtlich und nachvollziehbar.
Code: Alles auswählen
;- Enumerations
;
Enumeration
#Window_0
#Tree_Page
#Panel_0
#Button_ControlSplitter
#String_URL
#Button_Path
#Button_FTP
#Button_Sample
#Radio_vbs
#Radio_js
#Editor_Log
#Button_URL
#Button_Log
#Button_go
#Tree_Style
#Button_FunctionSplitter
#Editor_Function
#Editor_FunctionNr
#Button_HTMLSplitter
#Editor_HTML
#Editor_HTMLNr
#Button_PreviewSplitter
#Web_Preview
#Button_HelpSplitter
#Web_Help
EndEnumeration
;- Globals
;
;- Procedures
;
Procedure Open_Window_0()
If OpenWindow(#Window_0, 200, 100, 600, 400, "New window ( 0 )", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget | #PB_Window_SizeGadget | #PB_Window_TitleBar | #PB_Window_ScreenCentered )
If CreateGadgetList(WindowID(#Window_0))
TreeGadget(#Tree_Page, 0, 0, 200, 400)
TreeGadget(#Tree_Style, 0, 0, 200, 400)
;- Panel0
PanelGadget(#Panel_0, 200, 0, 405, 405)
AddGadgetItem(#Panel_0, -1, "Control")
ButtonGadget(#Button_ControlSplitter, 8, 8, 10, 365, "<")
StringGadget(#String_URL, 28, 8, 365, 20, "url", #PB_String_ReadOnly)
ButtonGadget(#Button_Path, 28, 38, 70, 20, "Path")
ButtonGadget(#Button_FTP, 116, 38, 70, 20, "FTP")
ButtonGadget(#Button_Sample, 204, 38, 70, 20, "Sample")
OptionGadget(#Radio_vbs, 38, 73, 140, 25, "vbs")
OptionGadget(#Radio_js, 38, 93, 140, 25, "js")
EditorGadget(#Editor_Log, 28, 133, 365, 200)
ButtonGadget(#Button_URL, 28, 348, 70, 20, "copy URL")
ButtonGadget(#Button_Log, 116, 348, 70, 20, "copy LOG")
ButtonGadget(#Button_go, 318, 348, 70, 20, "Start")
AddGadgetItem(#Panel_0, -1, "Style")
AddGadgetItem(#Panel_0, -1, "Function")
ButtonGadget(#Button_FunctionSplitter, 8, 8, 10, 365, "<")
EditorGadget(#Editor_Function, 68, 8, 325, 365)
EditorGadget(#Editor_FunctionNr, 28, 8, 42, 365)
AddGadgetItem(#Panel_0, -1, "HTML")
ButtonGadget(#Button_HTMLSplitter, 8, 8, 10, 365, "<")
EditorGadget(#Editor_HTML, 68, 8, 325, 365)
EditorGadget(#Editor_HTMLNr, 28, 8, 42, 365)
AddGadgetItem(#Panel_0, -1, "Preview")
ButtonGadget(#Button_PreviewSplitter, 8, 8, 10, 365, "<")
WebGadget(#Web_Preview, 28, 8, 365, 365, "about:blank")
AddGadgetItem(#Panel_0, -1, "Help")
ButtonGadget(#Button_HelpSplitter, 8, 8, 10, 365, "<")
WebGadget(#Web_Help, 28, 8, 365, 365, "about:blank")
CloseGadgetList()
EndIf
EndIf
EndProcedure
Procedure TreeVisibility()
Static TreeVisible=#True, PanelHeight, PanelWidth, PanelX
If TreeVisible
HideGadget(#Tree_Page, #True)
HideGadget(#Tree_Style, #True)
PanelWidth=GadgetWidth(#Panel_0)
PanelHeight=GadgetHeight(#Panel_0)
PanelX=GadgetX(#Panel_0)
ResizeGadget(#Panel_0, PanelX-200, #PB_Ignore, PanelWidth+200, PanelHeight)
SetGadgetText(#Button_ControlSplitter, ">")
SetGadgetText(#Button_FunctionSplitter, ">")
SetGadgetText(#Button_HTMLSplitter, ">")
SetGadgetText(#Button_PreviewSplitter, ">")
SetGadgetText(#Button_HelpSplitter, ">")
SetActiveGadget(#Panel_0)
TreeVisible=#False
Else
ResizeGadget(#Panel_0, PanelX, #PB_Ignore, PanelWidth, PanelHeight)
HideGadget(#Tree_Page, #False)
HideGadget(#Tree_Style, #False)
SetGadgetText(#Button_ControlSplitter, "<")
SetGadgetText(#Button_FunctionSplitter, "<")
SetGadgetText(#Button_HTMLSplitter, "<")
SetGadgetText(#Button_PreviewSplitter, "<")
SetGadgetText(#Button_HelpSplitter, "<")
SetActiveGadget(#Panel_0)
TreeVisible=#True
EndIf
EndProcedure
Open_Window_0()
PureRESIZE_SetWindowMinimumSize(#Window_0, 600, 400)
PureRESIZE_SetGadgetResize(#Tree_Page, #True, #True, #False, #True)
PureRESIZE_SetGadgetResize(#Tree_Style, #True, #True, #False, #True)
PureRESIZE_SetGadgetResize(#Panel_0, #True, #True, #True, #True)
PureRESIZE_SetGadgetResize(#Button_ControlSplitter, #True, #True, #False, #True, #Panel_0)
PureRESIZE_SetGadgetResize(#String_URL, #True, #True, #True, #False, #Panel_0)
PureRESIZE_SetGadgetResize(#Editor_Log, #True, #True, #True, #True, #Panel_0)
PureRESIZE_SetGadgetResize(#Button_URL, #True, #False, #False, #True, #Panel_0)
PureRESIZE_SetGadgetResize(#Button_Log, #True, #False, #False, #True, #Panel_0)
PureRESIZE_SetGadgetResize(#Button_go, #False, #False, #True, #True, #Panel_0)
PureRESIZE_SetGadgetResize(#Button_FunctionSplitter, #True, #True, #False, #True, #Panel_0)
PureRESIZE_SetGadgetResize(#Editor_FunctionNr, #True, #True, #False, #True, #Panel_0)
PureRESIZE_SetGadgetResize(#Editor_Function, #True, #True, #True, #True, #Panel_0)
PureRESIZE_SetGadgetResize(#Button_HTMLSplitter, #True, #True, #False, #True, #Panel_0)
PureRESIZE_SetGadgetResize(#Editor_HTMLNr, #True, #True, #False, #True, #Panel_0)
PureRESIZE_SetGadgetResize(#Editor_HTML, #True, #True, #True, #True, #Panel_0)
PureRESIZE_SetGadgetResize(#Button_PreviewSplitter, #True, #True, #False, #True, #Panel_0)
PureRESIZE_SetGadgetResize(#Web_Preview, #True, #True, #True, #True, #Panel_0)
PureRESIZE_SetGadgetResize(#Button_HelpSplitter, #True, #True, #False, #True, #Panel_0)
PureRESIZE_SetGadgetResize(#Web_Help, #True, #True, #True, #True, #Panel_0)
;- Main
;
Repeat
Event = WaitWindowEvent()
Select Event
Case #PB_Event_Gadget
Select EventGadget()
Case #Button_ControlSplitter
TreeVisibility()
Case #Button_FunctionSplitter
TreeVisibility()
Case #Button_HTMLSplitter
TreeVisibility()
Case #Button_PreviewSplitter
TreeVisibility()
Case #Button_HelpSplitter
TreeVisibility()
EndSelect
Case #PB_Event_Menu
EndSelect
Until Event = #PB_Event_CloseWindow
Bitte entschuldige das Moster - ich habe einfach einen meiner Codes verwendet statt extra etwas zu erstellen.
Obwohl ich deshalb hier schon prügel bezogen habe denke ich es ist übersichtlich und nachvollziehbar.
- 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
@uweb
Case erlaubt auch mehrere Ausdrücke
Case erlaubt auch mehrere Ausdrücke

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.
