Moin.
Das ist bestimmt schon jemanden aufgefallen.
Wenn ich einen Filerequest mache, sieht mein Bild zuerst so aus:
http://img121.imageshack.us/img121/1283/wtf1c.png
Wenn ich dann das kleine Fenster bewege, kriege ich Graphische Bugs o:
http://img519.imageshack.us/img519/6003/wtf2q.png
Das passiert aber nicht immer, beim ersten mal verschwindet der Hintergrund meistens "in die Taskleiste". Wenn ich aber ein zweites mal einen Filerrequest starte, bleibt der Hintergrund bestehen und verursacht den Bug.
Versuchs mal mit AUTOPAUSE FALSE ;)
Auch mit AUTOPAUSE FALSE, hab ich immernoch den selben Bug o:
Ok dann stopt der Request das komplette Programm solange bis ne Antwort zurück kommt...
Logisch sorry war mein Denkfehler :/
Geht ja auch net, wär dann ja unlogisch wenns Programm weiterläuft :)
Deshalb auch deine "Grafikfehler"!
Quote from: Ocean on 2010-Apr-19
Dieses Problem tritt nicht auf, wenn der FileRequest in ein Thread abgehandelt wird.
Ocean
Ja, das stimmt schon, aber es ist dennoch ein Bug. (Zwar kein äußerst schlimmer, aber dennoch unschön o:)
Außerdem: Wie benutze ich Threads? :>
Werden Threads in GLBasic von jedem Betriebssystem unterstützt?
Schau mal hier:
http://www.glbasic.com/forum/index.php?topic=3642.0
Mach das nicht. Da wirst' verrückt. Das mit dem Redraw Problem ist, weil der OpenGL Hintergrund nicht gezeichnet wird.
Was auch logisch ist, weils ja in der Requestabfrage solange stehen bleibt, bis diese vorüber ist...
Ich würde mich trozdem freuen, wenns da irgendeine Möglichkeit gäbe; wenn das Programm immer unten in die Taskleiste zischt oder sich wenigstens neu zeichnet während FILEREQUEST$.
Das kommt sonst vielleicht nicht ganz so gut beim Endbenutzer an, ich selber finds auch nicht gerade super schön o:
Das ist eine coole Idee!! Probier mal das:
IMPORT "C" __stdcall int ShowWindow(int, int);
// muss man INLINE machen für GLBASIC_HWND()?
INLINE
ShowWindow(GLBASIC_HWND(), 6); // 6=SW_MINIMIZE
ENDINLINE
Filereuqest...
INLINE
ShowWindow(GLBASIC_HWND(), 1); // SW_SHOWNORMAL = 1
ENDINLINE
Quote from: Kitty Hello on 2010-Apr-21
Das ist eine coole Idee!! Probier mal das:
IMPORT "C" __stdcall int ShowWindow(int, int);
// muss man INLINE machen für GLBASIC_HWND()?
INLINE
ShowWindow(GLBASIC_HWND(), 6); // 6=SW_MINIMIZE
ENDINLINE
Filereuqest...
INLINE
ShowWindow(GLBASIC_HWND(), 1); // SW_SHOWNORMAL = 1
ENDINLINE
Vielen dank Gernot o:
Mein Problem ist wie immer nur, dass es den Multiplatformrahmen sprengt. Also werde ich es wohl oder übel so lassen müssen :/ Aber danke trozdem, ans Handle hatte ich garnicht gedacht o: