OpenWindowedScreen Reagiert nicht ????

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
The_Dark_Zim-.-
Beiträge: 372
Registriert: 18.03.2008 16:53

OpenWindowedScreen Reagiert nicht ????

Beitrag von The_Dark_Zim-.- »

Hey ho habe ein Problem mit diesem Code:

Code: Alles auswählen

InitSprite()
If OpenWindow(0, 0, 0, 1024,768, "Explorer1")
If OpenWindowedScreen(WindowID(0),0,0,1024,768, 1, 0, 0)
EndIf
EndIf
Repeat
Delay(1)
forever
Entweder ist da was Falsch oder mein Pc macht was Falsch denn bei mir hängt sich das auf wenn ich einmal in das Fenster klicke!!?

Danke für jeden Tipp im vorraus
PB v4.2
Gruß ZIM
PB: 5.xx LTS x86/x64 | WIN: 10 Pro x64, Linux Mint x64
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

da fehlt auch eine Eventschleife, siehe WaitWindowEvent.
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8809
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken

Beitrag von NicTheQuick »

Am besten ein

Code: Alles auswählen

While WindowEvent() : Wend
mit in die Repeat-Schleife setzen, wenn die dir Window-Events egal sind.
Benutzeravatar
gnasen
Beiträge: 578
Registriert: 01.08.2007 14:28
Computerausstattung: PB 4.60

Beitrag von gnasen »

Code: Alles auswählen

If InitSprite() 
  If OpenWindow(0, 0, 0, 1024,768, "Explorer1") 
    If OpenWindowedScreen(WindowID(0),0,0,1024,768, 1, 0, 0) 
      
      ;put the stuff IN the if-clause. 
      ;Otherwise you ignore it, if the window/screen initialisation fails
      Repeat
      
        Repeat
          EventID = WindowEvent()
          Select EventID 
            Case #PB_Event_CloseWindow
              quit = 1
          EndSelect
        Until EventID  = 0
        
        ClearScreen(RGB(0,0,0))
        ;draw something and so on 
        ;later: some stuff to save cpu (get the time between two flips
        ;and wait for it. Have a look at the forum.
        FlipBuffers()  
      
      Until quit = 1
      
    EndIf 
  EndIf 
EndIf
edit: dachte wäre im englischen Forum? hmm ich leg mich besser wieder schlafen....
pb 4.51
Andreas21
Beiträge: 390
Registriert: 30.08.2004 09:05
Computerausstattung: Desktop
Windows 10 Pro x64
CPU: AMD Ryzen 5 2600 3.40 GHz
Ram: 16GB RAM
Grafik: NVIDA Geforce 1060
PB: 5.72 X86/X64
Wohnort: Heidelberg

Beitrag von Andreas21 »

Code: Alles auswählen

If InitSprite() 
  If OpenWindow(0, 0, 0, 1024,768, "Explorer1") 
    If OpenWindowedScreen(WindowID(0),0,0,1024,768, 1, 0, 0) 
      Repeat 
        EventID = WaitWindowEvent() 
        If EventID = #PB_Event_CloseWindow
          Quit = 1
        EndIf
      Until Quit = 1
    EndIf 
  EndIf 
EndIf
Windows 10 x64 Pro - PB 5.61 X64 / x32 - PB 4.6 x32
Benutzeravatar
The_Dark_Zim-.-
Beiträge: 372
Registriert: 18.03.2008 16:53

Beitrag von The_Dark_Zim-.- »

:D Danke euch
Wuste nicht, dass das da rein muss ^^, kommt davon wenn man das nicht richtig lernt und nur ausprobiert ... :D
PB: 5.xx LTS x86/x64 | WIN: 10 Pro x64, Linux Mint x64
Antworten