Aktuelle Zeit: 21.10.2019 12:12

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]




Ein neues Thema erstellen Auf das Thema antworten  [ 4 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: ScrollAreaGadget's??
BeitragVerfasst: 11.09.2004 11:24 
Offline
Benutzeravatar

Registriert: 11.09.2004 11:20
Im folgenden Prog ist irgendwo ein Bug. Es sollten eigentlich zwei Fenster teile nebeneinnder dargestellt werden, aber irgenwie funzt das nicht..
Wär nett wenn ihr mir helfen würdet.

Code:
#WindowWidth  = 800
#WindowHeight = 600

If OpenWindow(0, 0, 0, #WindowWidth, #WindowHeight, #PB_Window_SystemMenu, "PureBasic - Menu")

 If CreateMenu(0, WindowID())
  MenuTitle("Datei")
   MenuItem( 1, "Öffnen...")
   MenuItem( 2, "Speichern")
   MenuItem( 3, "Speichern unter...")
   MenuItem( 4, "Beenden")
 EndIf
 
 If CreateToolBar(0, WindowID())
   ToolBarStandardButton(0, #PB_ToolBarIcon_New)
   ToolBarStandardButton(1, #PB_ToolBarIcon_Open)
   ToolBarStandardButton(2, #PB_ToolBarIcon_Save)
   
   ToolBarSeparator()
   
   ToolBarStandardButton(4, #PB_ToolBarIcon_Find)
   ToolBarToolTip(4, "Titel Suchen")
   
   ToolBarSeparator()
 EndIf
 
;************************************************************************
 If CreateGadgetList(WindowID())
 
  ScrollAreaGadget(0, 0, 0, 400, 400, 1000, 1000, 1)
  CloseGadgetList()

  PanelGadget(1, 0, 0, 400, 400)
   For k=0 To 3
    AddGadgetItem(1, -1, "Line "+Str(k))
    ButtonGadget(12+k, 10, 10, 100, 20, "Test"+Str(k))
   Next

   SplitterGadget(5, 0, 25, #WindowWidth, #WindowHeight-25, 0, 1, #PB_Splitter_Vertical)

   SetGadgetState(5, 500)

   CloseGadgetList()
 EndIf
;***************************************************************************

 Repeat
 
  EventID.l = WaitWindowEvent()

  If EventID.l = #WM_CLOSE
   Quit = 1
  EndIf

 Until Quit = 1

EndIf

End


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: ScrollAreaGadget's??
BeitragVerfasst: 13.09.2004 15:01 
Offline

Registriert: 08.09.2004 18:41
Hellboy hat geschrieben:
Im folgenden Prog ist irgendwo ein Bug. Es sollten eigentlich zwei Fenster teile nebeneinnder dargestellt werden, aber irgenwie funzt das nicht.


Wie, Zwei Fensterteile?
Also, bei mir sieht das so aus:
Bild
Und was fehlt da jetzt noch?

mfG
Basti

//edit: Ich würde die Repeat Until Schleife so proggen:
Code:
Repeat
  event=WindowEvent()
  Delay(20) ;oder wahlweise auch 1, so mit 20 mach ich es lieber
Until event=#PB_Event_CloseWindow

_________________
enjoy life... while you can!


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 13.09.2004 15:23 
Offline
Benutzeravatar

Registriert: 29.08.2004 16:31
Wohnort: Münsterland
Soll das vielleicht so? :?

Code:
#WindowWidth  = 800
#WindowHeight = 600

If OpenWindow(0, 0, 0, #WindowWidth, #WindowHeight, #PB_Window_SystemMenu, "PureBasic - Menu")

 If CreateMenu(0, WindowID())
  MenuTitle("Datei")
   MenuItem( 1, "Öffnen...")
   MenuItem( 2, "Speichern")
   MenuItem( 3, "Speichern unter...")
   MenuItem( 4, "Beenden")
 EndIf
 
 If CreateToolBar(0, WindowID())
   ToolBarStandardButton(0, #PB_ToolBarIcon_New)
   ToolBarStandardButton(1, #PB_ToolBarIcon_Open)
   ToolBarStandardButton(2, #PB_ToolBarIcon_Save)
   
   ToolBarSeparator()
   
   ToolBarStandardButton(4, #PB_ToolBarIcon_Find)
   ToolBarToolTip(4, "Titel Suchen")
   
   ToolBarSeparator()
 EndIf
 
;************************************************************************
 If CreateGadgetList(WindowID())
  ScrollAreaGadget(0, 0, 0, 400, 400, 1000, 1000, 1)
  CloseGadgetList()

  PanelGadget(1, 0, 0, 400, 400)
   For k=0 To 3
    AddGadgetItem(1, -1, "Line "+Str(k))
    ButtonGadget(12+k, 10, 10, 100, 20, "Test"+Str(k))
   Next
   CloseGadgetList()
   SplitterGadget(5, 0, 25, #WindowWidth, #WindowHeight-25, 0, 1, #PB_Splitter_Vertical)
   SetGadgetState(5, 500)
 EndIf
;***************************************************************************

 Repeat
 
  EventID.l = WaitWindowEvent()

  If EventID.l = #WM_CLOSE
   quit = 1
  EndIf

 Until quit = 1

EndIf

End

_________________
Falsch zugeordnetes Zitat des Tages: "O'zapft is" - Edward Snowden :)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 14.09.2004 20:34 
Offline

Registriert: 31.08.2004 00:11
Wohnort: Mannheim
Die Event-Schleife lieber so umsetzen (verhindert Aufbauverzögerungen):

Code:
exit = 0  ; <- nur in seltenen Fällen nötig
Repeat
  event = WindowEvent()
  While event
   
    ; Hier her kommt das Event-Handling
   
    if event = #PB_Event_CloseWindow : exit = 1 : endif
    event = WindowEvent()

    ;Auf "kein" Fall hier her das Handling !!!
  Wend

  Delay(20)
Until exit = 1


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 4 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.

Suche nach:
Gehe zu:  

 


Powered by phpBB © 2008 phpBB Group | Deutsche Übersetzung durch phpBB.de
subSilver+ theme by Canver Software, sponsor Sanal Modifiye