Teil 4: Einschub... Ausgabe in einer Statuszeile
|
|
If OpenWindow(0,200,200,250,250,"Menü und Statusbar",#PB_Window_SystemMenu) If CreateGadgetList(WindowID(0)) TextGadget(1,20,60,210,20,"",#PB_Text_Center|#PB_Text_Border) ButtonGadget(2,50,100,150,20,"Programm Ende") EndIf If CreateMenu(0, WindowID(0)) MenuTitle("Datei") MenuItem( 1, "Neu") MenuItem( 2, "Laden") MenuBar() MenuItem( 3, "Speichern") MenuTitle("Drucken") MenuItem(4,"Drucken") MenuTitle("Ende") MenuItem(5, "Ende") EndIf If
CreateStatusBar(0,WindowID(0)) Repeat EventID = WaitWindowEvent() If EventID = #PB_Event_CloseWindow Quit = 1 EndIf If EventID = #PB_Event_Menu If EventMenu()=1 SetGadgetText(1,"Neu") StatusBarText(0,0,"Neu !",#PB_StatusBar_Center ) EndIf If EventMenu()=2 SetGadgetText(1,"Laden") StatusBarText(0,0,"Laden !",#PB_StatusBar_Center ) EndIf If EventMenu()=3 SetGadgetText(1,"Speichern") StatusBarText(0,0,"Speichern !",#PB_StatusBar_Center ) EndIf If EventMenu()=4 SetGadgetText(1,"Drucken") StatusBarText(0,0,"Drucken !",#PB_StatusBar_Center ) EndIf If EventMenu()=5 MessageRequester("","Programmende!",0) End EndIf EndIf If EventID=#PB_Event_Gadget If EventGadget()=2 Quit=1 EndIf EndIf Until Quit=1 EndIf End |
|
Pure Basic erlaubt das einfache Anlegen einer Status-Zeile. Hierfür benötigen wir den Befehl: CreateStatusBar Die Parameter: Nummer der Statuszeile, an der sie identifiziert werden kann und die aktuelle Nummer des Fensters in das diese Statuszeile angelegt werden soll. Es folgt der Befehl: AddStatusBarField mit dem Parameter: Breite in Pixel des Feldes, in unserem Fall die komplette Breite des Fensters. |
|
StatusbarText Dieser Befehl wird benötigt, um Text in die Status-Zeile einzufügen. In unserem Programm soll neben der Ausgabe des Menüereignisses in ein TextGadget nun auch eine Ausgabe in die Statuszeile folgen. Deshalb setzen wir nach dem SetgadgetText-Befehl den Befehl StatusbarText mit den Parametern: Statusbar Nummer, Feldnummer (wird benötigt, wenn mehrere Felder in der Statuszeile angelegt wurden, bei uns also 0, da wir nur ein Feld angelegt haben), der auszugebende Text und zuletzt ein Parameter, der das Aussehen der Textausgabe definiert. In unserem Fall soll die Ausgabe zentriert erfolgen. |
|
|
|
Das Resultat nach Betätigen des Datei-Menüs:
|