Fenstergröße Webgadget
- ProgOldie
- Beiträge: 236
- Registriert: 19.05.2012 17:09
- Computerausstattung: Windows11, Arduinos, Pi3, PureBasic 6.02
Fenstergröße Webgadget
Hallo,
eigentlich eine einfache Frage, an deren Lösung ich aber nun schon einige Stunden hänge.
Ich habe in einem Fenster ein Webgadget. Wenn ich nun das Fenster maximiere etc., soll die WebGadgetgröße angepasst werden. Das Ereignis dazu klappt.
Nur: Wie änder man die Abmessungen eines vorhandenen WebGadgets. Bei setGadgetAttribut findet man dazu leider nichts.
in der Hilfe.
Dank vorab!
ProgOldie
eigentlich eine einfache Frage, an deren Lösung ich aber nun schon einige Stunden hänge.
Ich habe in einem Fenster ein Webgadget. Wenn ich nun das Fenster maximiere etc., soll die WebGadgetgröße angepasst werden. Das Ereignis dazu klappt.
Nur: Wie änder man die Abmessungen eines vorhandenen WebGadgets. Bei setGadgetAttribut findet man dazu leider nichts.
in der Hilfe.
Dank vorab!
ProgOldie
Windows10 / PB5.70 / Arduino (-Due) / Raspberry Pi3 /Linux Mint 18
- HeX0R
- Beiträge: 3042
- Registriert: 10.09.2004 09:59
- Computerausstattung: AMD Ryzen 7 5800X
96Gig Ram
NVIDIA GEFORCE RTX 3060TI/8Gig
Win11 64Bit
G19 Tastatur
2x 24" + 1x27" Monitore
Glorious O Wireless Maus
PB 3.x-PB 6.x
Oculus Quest 2 + 3 - Kontaktdaten:
Re: Fenstergröße Webgadget
So wie bei jedem anderen Gadget auch, durch ResizeGadget()
{Home}.:|:.{Codes}.:|:.{Downloads}.:|:.{History Viewer Online}.:|:.{Bier spendieren}
- NicknameFJ
- Beiträge: 324
- Registriert: 03.06.2007 14:36
- Wohnort: Von der Sonne aus gesehen der dritte Planet
Re: Fenstergröße Webgadget
Hi,
Grüße
NicknameFJ
EDIT: Mist, HeXor war schneller
Code: Alles auswählen
If OpenWindow(1,10,10,1000,600,"TEST")
WebGadget(10,10,10,800,400,"www.purebasic.fr/german")
ResizeGadget(10,10,10,500,300)
Repeat
Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf
NicknameFJ
EDIT: Mist, HeXor war schneller
PS: Alle im Text enthaltenen Schreibfehler sind beabsichtigt und dienen der Belustigung aller


-
- Beiträge: 112
- Registriert: 23.07.2012 19:19
Re: Fenstergröße Webgadget
Jetzt passts sich an die Fenstergröße an
Wenn du die Demo hast :
der Code
Grüße , Computerfreak
Wenn du die Demo hast :
Code: Alles auswählen
#WM_SIZE=5
#WM_CLOSE=16
Code: Alles auswählen
If OpenWindow(1,10,10,1000,600,"TEST",#PB_Window_SizeGadget|#PB_Window_MaximizeGadget)
WebGadget(10,10,10,800,400,"www.purebasic.fr/german")
ResizeGadget(10,10,10,500,300)
Repeat
Select WindowEvent()
Case #WM_SIZE
ResizeGadget(10,0,0,WindowWidth(1),WindowHeight(1))
Case #WM_CLOSE
End
EndSelect
ForEver
EndIf
PureBasic: Immer das neueste
Windows 8.1 / AMD FX 6100 / R9280X / 8GB RAM
Macbook Pro 2015 Retina
Dell Inspiron 1720 mit Linux Mint
...Und diverse Kleinstcomputer
Windows 8.1 / AMD FX 6100 / R9280X / 8GB RAM
Macbook Pro 2015 Retina
Dell Inspiron 1720 mit Linux Mint
...Und diverse Kleinstcomputer
Re: Fenstergröße Webgadget
@computerfreak
Warum API-Konstanten?
Dafür gibt es PB-Konstanten:
#WM_SIZE -> #PB_Event_SizeWindow
#WM_CLOSE -> #PB_Event_CloseWindow
Warum API-Konstanten?
Dafür gibt es PB-Konstanten:
#WM_SIZE -> #PB_Event_SizeWindow
#WM_CLOSE -> #PB_Event_CloseWindow
Re: Fenstergröße Webgadget
@computerfreak:
für WM_SIZE und WM_CLOSE gibt es native PureBasic-Äquivalente: #PB_Event_SizeWindow
und #PB_Event_CloseWindow (funktioniert auch in der Demo). Und WindowEvent() kann man
in diesem Fall durch WaitWindowEvent() ersetzen.
Grüße ... Kiffi
für WM_SIZE und WM_CLOSE gibt es native PureBasic-Äquivalente: #PB_Event_SizeWindow
und #PB_Event_CloseWindow (funktioniert auch in der Demo). Und WindowEvent() kann man
in diesem Fall durch WaitWindowEvent() ersetzen.
Code: Alles auswählen
#Window = 0
#Webgadget = 0
If OpenWindow(#Window, #PB_Ignore, #PB_Ignore, 800, 600, "TEST", #PB_Window_SizeGadget | #PB_Window_MaximizeGadget)
WebGadget(#Webgadget, 0, 0, 0, 0, "http://www.purebasic.fr/german")
Repeat
Select WaitWindowEvent()
Case #PB_Event_SizeWindow
ResizeGadget(#Webgadget, #PB_Ignore, #PB_Ignore, WindowWidth(#Window), WindowHeight(#Window))
Case #PB_Event_CloseWindow
Break
EndSelect
ForEver
EndIf
a²+b²=mc²
- ProgOldie
- Beiträge: 236
- Registriert: 19.05.2012 17:09
- Computerausstattung: Windows11, Arduinos, Pi3, PureBasic 6.02
Re: Fenstergröße Webgadget
Hallo,
da habe ich den Wald vor lauter Bäumen nicht gesehen. Danke für die Hilfen.
Wen's interessiert: Ich wollte einen kleinen Browser, der bei Betätigung eines Buttos (saveButton) die aktuelle URL weiter verarbeitet. Hier meine Lösung:
da habe ich den Wald vor lauter Bäumen nicht gesehen. Danke für die Hilfen.
Wen's interessiert: Ich wollte einen kleinen Browser, der bei Betätigung eines Buttos (saveButton) die aktuelle URL weiter verarbeitet. Hier meine Lösung:
Code: Alles auswählen
;Zum Weiterbearbeiten einer URL (ProgOldie)
Global URLGad
Procedure saveURL(WebAdr.s)
; Hier wird später noch die Webadresse verarbeitet
Debug WebAdr
ProcedureReturn #True
EndProcedure
Procedure NavigationCallback(Gadget, Url$)
; wird vom WebGad aufgerufen
SetGadgetText(URLGad,Url$)
;schreibt die aktuelle URL in die URLZeile
ProcedureReturn #True
EndProcedure
Procedure fitGadgets(win.i,Gad1,Gad2,Gad3)
;passt Größe und ggf. Position der Gadgets an die aktuelle Fenstergröße an.
;win: aktuelles Browserfenster; Gad1=WebGad, Gad2=URLGad, Gad3=saveButton
ResizeGadget(Gad1,#PB_Ignore,#PB_Ignore,WindowWidth(win)-10,WindowHeight(win)-40)
ResizeGadget(Gad2,#PB_Ignore,#PB_Ignore,WindowWidth(win)-180,20)
ResizeGadget(Gad3,WindowWidth(win)-140,#PB_Ignore,60,20)
EndProcedure
browseWin=OpenWindow(#PB_Any, 0, 0, 600, 400, "WebGadget", #PB_Window_MinimizeGadget|#PB_Window_MaximizeGadget| #PB_Window_ScreenCentered)
URLGad=StringGadget(#PB_Any,10,10,400,20,"",#PB_Text_Border)
AddKeyboardShortcut(browseWin, #PB_Shortcut_Return, 15) ;Zum Abfangen von RETURN im URLGadget
saveButton=ButtonGadget(#PB_Any,WindowWidth(browsewin)-140,10,60,20,"save URL")
WebGad=WebGadget(#PB_Any, 10, 40, 580, 350, "http://www.purebasic.com")
SetGadgetAttribute(WebGad, #PB_Web_NavigationCallback, @NavigationCallback())
Repeat
Event=WaitWindowEvent()
EvGad=EventGadget()
EvType=EventType()
Select Event
Case #PB_Event_Menu ; wurde in dem Fenster die RETURN-Taste gedrückt?
Select EventMenu()
Case 15 ; war es das Shortcut mit der Nr 15?
If GetActiveGadget() = URLGad
SetGadgetText(WebGad,GetGadgetText(URLGad))
EndIf
EndSelect
Case #PB_Event_MaximizeWindow
fitGadgets(browsewin,WebGad,URLGad,saveButton)
Case #PB_Event_SizeWindow
fitGadgets(browsewin,Webgad,URLGad,saveButton)
Case #PB_Event_CloseWindow
CloseWindow(browseWin)
Case #PB_Event_Gadget
Select EvGad
Case saveButton ;wurde der saveURL-Button betätigt?
saveURL(GetGadgetText(URLGad))
EndSelect
EndSelect
Until Event=#PB_Event_CloseWindow
Windows10 / PB5.70 / Arduino (-Due) / Raspberry Pi3 /Linux Mint 18