BlitzMax+MaxGUI Keine Rückmeldung
Übersicht

FWeinbehemals "ich"Betreff: BlitzMax+MaxGUI Keine Rückmeldung |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich habe mal wieder ein Problem:
Wenn ich in BlitzMax in einem BlitzMax Projekt eine Schleife mach, dann kommt es sehr oft vor das das Programm komplett hängt (Keine Rückmeldung) Ich habe ein Kleines Beispiel zusammen Gebastelt welches den Effekt Zeigt Code: [AUSKLAPPEN] Import MaxGui.Drivers Strict Local Window:TGadget = CreateWindow("Test",601,230,311,494,Null,WINDOW_TITLEBAR|WINDOW_MENU|WINDOW_STATUS|WINDOW_CLIENTCOORDS|WINDOW_ACCEPTFILES) Local Button:TGadget = CreateButton("Test Button",80,390,80,40,Window,0) SeedRnd MilliSecs() Repeat Select WaitEvent () Case EVENT_GADGETACTION Select EventSource() Case Button While Not KeyHit(1) Wend End Select Case EVENT_WINDOWCLOSE End End Select Forever Wie kann ich es jetzt Schaffen das ich troßdem, auch wenn ich in der Schleife bin, das Fenster noch normal schließen kann. mfg ich |
||
"Wenn die Menschen nur über das sprächen, was sie begreifen, dann würde es sehr still auf der Welt sein." Albert Einstein (1879-1955)
"If you live each day as if it was your last, someday you'll most certainly be right." Steve Jobs |
- Zuletzt bearbeitet von FWeinb am So, Apr 19, 2009 21:12, insgesamt einmal bearbeitet
ChristianK |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
WaitTimer sollte da nicht stehen. Bei WaitEvent wird schließlich auch schon gewartet. | ||
AdvanceLcd
Intel Core 2 Duo 3.2 GHz, 4 GB RAM, GeForce 8800 GTX | MacBook Pro 15,4″ Intel Core 2 Duo 2.4 GHz, 2 GB RAM, GeForce 8600M GT |
FWeinbehemals "ich" |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Danke, aber das Ändert leider auch nichts an dem Probelm.
mfg ich |
||
"Wenn die Menschen nur über das sprächen, was sie begreifen, dann würde es sehr still auf der Welt sein." Albert Einstein (1879-1955)
"If you live each day as if it was your last, someday you'll most certainly be right." Steve Jobs |
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Die mainloop bei einer App ist ja diese Repeat forever, es ist also sinnfrei noch eine zweite Mainloop reinzupacken, denn dann gerät das Programm natürlich in eine Schleife bei der keine weiteren Events mehr abgefangen werden (können). | ||
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3 Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64 B3D BMax MaxGUI Stolzer Gewinner des BAC#48, #52 & #92 |
FWeinbehemals "ich" |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich möchte aber einen TCP Stream Auslesen und das geht doch nur mit einer Extra Schleife ?
Ich lese das ganze So aus: Code: [AUSKLAPPEN] Local Inhalt:String Local Stream:TSocketStream = TSocketStream.CreateClient(Host,80) While not Eof(Stream) Inhalt = Inhalt + ReadLine(stream) Wend Anders kann man das doch garnicht machen ? mfg ich |
||
"Wenn die Menschen nur über das sprächen, was sie begreifen, dann würde es sehr still auf der Welt sein." Albert Einstein (1879-1955)
"If you live each day as if it was your last, someday you'll most certainly be right." Steve Jobs |
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Du könntest in jedem Durchgang (solange nicht eof() erreicht ist ) eine Zeile auslesen, ohne while-wend | ||
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3 Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64 B3D BMax MaxGUI Stolzer Gewinner des BAC#48, #52 & #92 |
![]() |
amon |
![]() Antworten mit Zitat ![]() |
---|---|---|
Die andere Möglichkeit, will Dich aber damit jetzt nicht verwirren, ist diese zweite Schleife in einen Hintergrund-Thread auszulagern.
Aber das würd ich dir erst als zweiten Schritt empfehlen, wenn Dein Code erstmal auch so richtig läuft und das tut was du willst, denn mit dem Threading kommen dafür noch ein paar andere kompliziertere Dinge dazu ![]() |
||
FWeinbehemals "ich" |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ok danke werde ich versuchen
Mfg Ich |
||
"Wenn die Menschen nur über das sprächen, was sie begreifen, dann würde es sehr still auf der Welt sein." Albert Einstein (1879-1955)
"If you live each day as if it was your last, someday you'll most certainly be right." Steve Jobs |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group