Webgadget ohne Scrollbar?

Für allgemeine Fragen zur Programmierung mit PureBasic.
Benutzeravatar
Lukaso
Beiträge: 720
Registriert: 08.09.2004 18:51
Wohnort: Oberkirch
Kontaktdaten:

Webgadget ohne Scrollbar?

Beitrag von Lukaso »

Hallo,

ich möchte die Scrollbar im Webgadget komplett weghaben.
Wie kann ich das anstellen?

Danke :allright:

MFG Lukaso
Nextgen Guild Wars Fanseite: Guild Wars Tactics (Pseudo-Admin + Developer)
"Das Fluchen ist die einzige Sprache, die jeder Programmierer beherrscht." - Unbekannter Autor
Benutzeravatar
Falko
Admin
Beiträge: 3535
Registriert: 29.08.2004 11:27
Computerausstattung: PC: MSI-Z590-GC; 32GB-DDR4, ICore9; 2TB M2 + 2x3TB-SATA2 HDD; Intel ICore9 @ 3600MHZ (Win11 Pro. 64-Bit),
Acer Aspire E15 (Win11 Home X64). Purebasic LTS 6.11b1
HP255G8 Notebook @AMD Ryzen 5 5500U with Radeon Graphics 2.10 GHz 3.4GHz, 32GB_RAM, 3TB_SSD (Win11 Pro 64-Bit)
Kontaktdaten:

Beitrag von Falko »

Code: Alles auswählen

If OpenWindow(0,0,0,400,150,#PB_Window_SystemMenu|#PB_Window_ScreenCentered,"WebGadget") And CreateGadgetList(WindowID(0)) 
    WebGadget(0,10,10,580,280,"http://www.purebasic.com") 
    ShowScrollBar_(WindowID(),#SB_BOTH,#false)

    ; Hinweis: wenn Sie eine lokale Datei benutzen möchten, dann ändern Sie den letzten Parameter 
    ;          in "file://" + Pfad + Dateiname 
    Repeat : Until WaitWindowEvent()=#PB_Event_CloseWindow 
  EndIf 
Bild
Win11 Pro 64-Bit, PB_6.11b1
Benutzeravatar
Lukaso
Beiträge: 720
Registriert: 08.09.2004 18:51
Wohnort: Oberkirch
Kontaktdaten:

Beitrag von Lukaso »

Der Befehl "ShowScrollBar_(WindowID(),#SB_BOTH,#false)" bewirkt nix ... :roll:

Du hast einfach das Webgadget größer gemacht wie das Window :lol:
Aber da wo ich es platzirt habe, müsste die Scrollbar ausgeschalltet werden ... :wink:

Danke trotzdem :allright:

MFG Lukaso
Nextgen Guild Wars Fanseite: Guild Wars Tactics (Pseudo-Admin + Developer)
"Das Fluchen ist die einzige Sprache, die jeder Programmierer beherrscht." - Unbekannter Autor
Benutzeravatar
bluejoke
Beiträge: 1244
Registriert: 08.09.2004 16:33
Kontaktdaten:

Beitrag von bluejoke »

ShowScrollbar_(...) bewirkt doch eine Anzeige bzw. Nichtanzeige der Scrollbar vom Fenster, nicht von den Gadgets!?
:? /:->
Ich bin Ausländer - fast überall
Windows XP Pro SP2 - PB 4.00
DarkDragon
Beiträge: 6291
Registriert: 29.08.2004 08:37
Computerausstattung: Hoffentlich bald keine mehr
Kontaktdaten:

Beitrag von DarkDragon »

bluejoke hat geschrieben:ShowScrollbar_(...) bewirkt doch eine Anzeige bzw. Nichtanzeige der Scrollbar vom Fenster, nicht von den Gadgets!?
:? /:->
Gadgets sind für WindowsSysteme nichts anderes als Fenster mit einer bestimmten Klasse.

Bei dem code sollte wohl eher GadgetID(0) als erster Parameter bei ShowScrollbar stehen, funktioniert aber auch nicht. Versuch mal mit dem Trick ein childfenster zu öffnen und darin dann ein Webgadget so einbauen, dass es durch das ChildWindow abgeschnitten wird ;) .
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
Benutzeravatar
Lukas-P
Beiträge: 262
Registriert: 07.10.2004 12:03

Beitrag von Lukas-P »

Teste ma im Body beim HTML Code:

<body scrolling=no>
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 »

WebGadget-Stil kann nur über COM geändert werden. Ob eine Objekteigenschaft gibt, mit der man das Visible der Scrollbar disablen kann ist mir nicht bekannt. Einfachste Möglichkeit wäre wohl die Nutzung einer DLL wie QHTML.dll oder ähnlich, und hiermit ein Browser-Gadget erstellen
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
Benutzeravatar
bingo
Beiträge: 118
Registriert: 16.09.2004 18:33
Wohnort: thüringen
Kontaktdaten:

Beitrag von bingo »

Code: Alles auswählen

Enumeration 
  #WebGadget 
  #Window=0 
EndEnumeration 

Procedure.l Ansi2Uni(ansi.s) 
  size.l=MultiByteToWideChar_(#CP_ACP,0,ansi,-1,0,0) 
  Dim unicode.w(size) 
  MultiByteToWideChar_(#CP_ACP, 0, ansi, Len(ansi), unicode(), size) 
  ProcedureReturn @unicode()  
EndProcedure 

If OpenWindow(#Window, 0, 0, 640, 480, #PB_Window_ScreenCentered|#PB_Window_SystemMenu, "Catch webbrowser events...") 
  If CreateGadgetList(WindowID())    
    WebGadget(#WebGadget, 5, 5, 630, 470, "www.heise.de") 
    Browser.IWebBrowser2 = GetWindowLong_(GadgetID(#WebGadget), #GWL_USERDATA)    

    Repeat 
      While WindowEvent(): Wend 
      Delay(1) 
      Browser\get_busy(@isBusy.l) 
    Until isBusy = 0 
    
    If Browser\get_Document(@DocumentDispatch.IDispatch) = #S_OK 
      If DocumentDispatch\QueryInterface(?IID_IHTMLDocument2, @Document.IHTMLDocument2) = #S_OK 
        If Document\get_body(@Element.IHTMLElement) = #S_OK 
          If Element\get_style(@Style.IHTMLStyle)  = #S_OK 
            Style\put_overflow(Ansi2Uni("hidden")) 
          EndIf  
        EndIf 
        Document\Release() 
      EndIf  
      DocumentDispatch\Release()    
    EndIf 
    
    Repeat 
    Until WaitWindowEvent() = #PB_EventCloseWindow 
  EndIf 
EndIf 

DataSection 
IID_IHTMLDocument2:  ;  {332C4425-26CB-11D0-B483-00C04FD90119} 
Data.l $332C4425 
Data.w $26CB, $11D0 
Data.b $B4, $83, $00, $C0, $4F, $D9, $01, $19 

IID_IHTMLElement:  ; {3050F1FF-98B5-11CF-BB82-00AA00BDCE0B} 
Data.l $3050F1FF 
Data.w $98B5, $11CF 
Data.b $BB, $82, $00, $AA, $00, $BD, $CE, $0B  
EndDataSection
:wink:
lohnt sich immer mal hier zu schauen ... auch wenn man ggf. nix versteht:
http://purebasic.hmt-forum.com/viewtopi ... =webgadget
1:0>1
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 »

lohnt sich immer mal hier zu schauen ... auch wenn man ggf. nix versteht:
Wie Wahr Bild
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
Benutzeravatar
Falko
Admin
Beiträge: 3535
Registriert: 29.08.2004 11:27
Computerausstattung: PC: MSI-Z590-GC; 32GB-DDR4, ICore9; 2TB M2 + 2x3TB-SATA2 HDD; Intel ICore9 @ 3600MHZ (Win11 Pro. 64-Bit),
Acer Aspire E15 (Win11 Home X64). Purebasic LTS 6.11b1
HP255G8 Notebook @AMD Ryzen 5 5500U with Radeon Graphics 2.10 GHz 3.4GHz, 32GB_RAM, 3TB_SSD (Win11 Pro 64-Bit)
Kontaktdaten:

Beitrag von Falko »

Schade, hatte noch kein Französisch. :mrgreen:
:allright:
Bild
Win11 Pro 64-Bit, PB_6.11b1
Antworten