Seite 2 von 2
Verfasst: 15.06.2007 22:32
von ts-soft
Zu Deinem Bugreport, habe den Code mal funktionstüchtig gemacht
Code: Alles auswählen
If OpenWindow(0, 0, 0, 600, 530, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) And CreateGadgetList(WindowID(0))
StringGadget(1, 0, 0, 300, 20, "Webseite")
WebGadget(0, 10, 30, 580, 480, "C:\")
Define.s URL = "http://folker-linstedt.de"
SetGadgetText(0, URL)
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
Break
Case #PB_Event_Gadget
Select EventGadget()
Case 0
If EventType() = #PB_EventType_DownloadEnd
SetGadgetText(1,GetGadgetText(0))
EndIf
EndSelect
EndSelect
ForEver
EndIf
SetGadgetText funktioniert erst wenn das WebGadget mit der Darstellung,
dem Download fertig ist, ausserdem nur im Eventloop!
Verfasst: 15.06.2007 22:40
von Xaby
Naja, ich hatte zwischendurch auch mal ein
WindowEvent()
zwischen den SetGadgetText() und dem Aufruf vom zweiten SetGadgetText()
aber auch da kam es halt zu keinem sinnvollen Ergebnis. Also erst, wenn die Seite angezeigt wird.
Das ist eine neue Information für mich. Dank dir
Dachte, es reagiert wie ein StringGadget()
Code: Alles auswählen
If OpenWindow(0, 0, 0, 600, 530, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) And CreateGadgetList(WindowID(0))
StringGadget(1,0,0,300,20,"Webseite")
StringGadget(0, 10, 30, 580, 480, "C:\")
URL.s="http://folker-linstedt.de"
SetGadgetText(0,URL)
SetGadgetText(1,GetGadgetText(0))
Repeat
Event = WaitWindowEvent()
Until Event=16
EndIf
Verfasst: 15.06.2007 22:56
von ts-soft
>> Dachte, es reagiert wie ein StringGadget()
Auch das StringGadget reagiert erst nach WaitWinowEvent()
Aber natürlich schneller.
Ein einzelnes WindowEvent() ist wohl ziemlich sinnlos, es kommt doch nicht
gerade in dem Moment das Ereignis, was Du erhoffst, ohne Schleife macht
das normallerweise keinen Sinn.
Verfasst: 15.06.2007 23:13
von Xaby
Ja, aber bei dem Code oben enthält das obere StringGadget den Text des unteren.
Es muss dafür also kein Event stattfinden!
Darum ging es nur. Von einer Eingabe von außerhalb mal abgesehen.

Verfasst: 15.06.2007 23:17
von ts-soft
>> Es muss dafür also kein Event stattfinden!
Eigentlich schon, ohne Event wird garnichts angezeigt, nichtmal das Fenster

Verfasst: 16.06.2007 14:00
von Xaby
Vielleicht hätte ich doch mal eine Ausbildung als Eventmanager machen sollen

Verfasst: 24.12.2007 01:00
von Programie
Xaby hat geschrieben:...
Woher weiß also der Server, ob ich klicke oder den direkten Link ansteuere?
wie sieht ein echter Reqeust von einem Browser aus und wo ist der Unterschied zwischen:
>>Link im neuen Fenster öffnen
und
>>Ziel speichern unter
...
Der Server kann rausfinden, von welcher Seite du gerade kommst.
Kommst du von der Seite mit den Smillies, lässt der Server das Anzeigen des Bildes zu. Kommst du aber von einer anderen Seite als der Smillieseite, dann sagt der Server zum Browser "Ey, du kommst hier net rein!"

.
Ich könnte mir vorstellen, dass das so ist.
Es gibt z.B. in PHP ein Befehl, mit dem man das alles rausfinden kann.
Achja, und ob die Seite eine PHP-Seite ist, kannst du nicht so leicht rausfinden, da der Server ja die Daten sendet (Sieh dir z.B. mal das "Atomic Web Server"-Beispiel in PureBasic an (Da kannst du auch bestimmen, was gesendet wird).).
Verfasst: 24.12.2007 15:01
von hardfalcon
Die Technik hinter dem ganzen ist folgende: (Fast) jeder Browser schickt, zumindest standardmäßig, mit seinen HTTP-Anfragen auch den "Referrer" mit. Der Referrer ist einfach die URL von der Seite, auf der du zuvor warst. Der Server schaut sich einfach den Referrer an, und kann so rausfinden, von welcher Seite du kommst. Wenn du also von ner "andern" Seite kommst, weisst er, dass du nen Direktlink gekommen bist.