I just bought BlitzPlus... Help, please!
BlitzPlus Forums/BlitzPlus Beginners Area/I just bought BlitzPlus... Help, please!
| ||
I made a code for the base of a program, and need help. It seems as though every time I close a tool window, I close the whole program. Could someone fix this code so that closing the window that comes up when you click File> New doesn't close the entire program. Here is the code: ------------------------------------------------------------ ;program by Paul Herz Global filename filename="project2" Window1=CreateWindow("Program",500,300,400,300) SetMinWindowSize Window1,400,300 SetStatusText Window1,"©2008 ÆroBlu Software" menu=WindowMenu(Window1) file=CreateMenu("File",0,menu) CreateMenu("New",1,file) CreateMenu("Open",2,file) CreateMenu("",0,file) CreateMenu("Save",3,file) CreateMenu("Save as...",4,file) CreateMenu("",0,file) CreateMenu("Quit",5,file) Function newfilewindow() file=CreateWindow("TEST",525,335,350,240,0,17) End Function UpdateWindowMenu Window1 ;--->>MAIN<>LOOP<<---; Repeat id=WaitEvent() If ID=$803 Then End If ID=$1001 Then EID=EventData() Select EID Case 1 newfilewindow() Case 2 AppTitle("Open") Notify("Open") Case 3 AppTitle("Save") Notify("Save") Case 4 AppTitle("Save as...") Notify("Save as...") Case 5 AppTitle("Are You Sure?") result=Confirm("Are You Sure You Want to Quit?",True) If result=1 Then End Else EndIf End Select EndIf Forever End |
| ||
If ID=$803 Then End There's your problem. You need to see which window has closed with EventSource. |
| ||
OK Thanks, it is late, so I will test it 2Mar0. 9|-| -smiley of the day: Miner smiley! -------------------------------------- |
| ||
but both windows (i tested in the blitzcc console) returns zero! and when I try to attach a group handle, it screws up! |-(( -------------------------------- |
| ||
you need to check the event, the window 'file' needs to be globalevent = WaitEvent() Select event Case $803 window_closed = EventSource() Select window_closed Case Window1 Case file End Select End Select |
| ||
thanks, that is helpful. P.S. how the heck do you do that black bg. and green text? Is this forum BBCode or HTML based? BBCode: no irony, please. |
| ||
oh dag. :-( I give up. can someone just fix the code? now nothing works: ;program by Paul Herz Global filename filename="project2" Global filewin Window1=CreateWindow("Program",500,300,400,300) SetMinWindowSize Window1,400,300 SetStatusText Window1,"©2008 ÆroBlu Software" menu=WindowMenu(Window1) file=CreateMenu("File",0,menu) CreateMenu("New",1,file) CreateMenu("Open",2,file) CreateMenu("",0,file) CreateMenu("Save",3,file) CreateMenu("Save as...",4,file) CreateMenu("",0,file) CreateMenu("Quit",5,file) Function newfilewindow() filewin=CreateWindow("TEST",525,335,350,240,0,17) End Function UpdateWindowMenu Window1 ;--->>MAIN<>LOOP<<---; Repeat id=WaitEvent() event = WaitEvent() Select event Case $803 window_closed = EventSource() Select window_closed Case Window1 Case file End Select End Select If ID=$803 Then Print EventData EndIf If ID=$1001 Then EID=EventData() Select EID Case 1 newfilewindow() Case 2 AppTitle("Open") Notify("Open") Case 3 AppTitle("Save") Notify("Save") Case 4 AppTitle("Save as...") Notify("Save as...") Case 5 AppTitle("Are You Sure?") result=Confirm("Are You Sure You Want to Quit?",True) If result=1 Then End Else EndIf End Select EndIf Forever End ;----------------------- |
| ||
take a look at the code below, we only need to call waitevent once, events can be checked using 'event' var it will contain the last generated event.Global filename filename="project2" Global filewin Window1=CreateWindow("Program",500,300,400,300) SetMinWindowSize Window1,400,300 SetStatusText Window1,"©2008 ÆroBlu Software" menu=WindowMenu(Window1) file=CreateMenu("File",0,menu) CreateMenu("New",1,file) CreateMenu("Open",2,file) CreateMenu("",0,file) CreateMenu("Save",3,file) CreateMenu("Save as...",4,file) CreateMenu("",0,file) CreateMenu("Quit",5,file) Function newfilewindow() filewin=CreateWindow("TEST",525,335,350,240,0,17) End Function UpdateWindowMenu Window1 ;--->>MAIN<>LOOP<<---; Repeat event = WaitEvent() Select event Case $1001 ; menu action events EID=EventData() Select EID Case 1 newfilewindow() Case 2 AppTitle("Open") Notify("Open") Case 3 AppTitle("Save") Notify("Save") Case 4 AppTitle("Save as...") Notify("Save as...") Case 5 AppTitle("Are You Sure?") result=Confirm("Are You Sure You Want to Quit?",True) If result=1 Then End EndIf End Select Case $803 ; close window events window_closed = EventSource() Select window_closed Case Window1 Notify "You clicked to close Window1" Case filewin Notify "You clicked to close filewin" HideGadget filewin End Select End Select Forever End code tags are {code} {/code} but change '{' and '}' for '[' and ']' kev |
| ||
Asi Forum Codes: http://www.blitzbasic.com/faq/faq_entry.php?id=2 |
| ||
God, thanks a bunch, Kev. Now that I have a base ready, I don't have to be such an n00B. ----------------------------------------------------- |
| ||
lets try some BBcode with {}s magic... {i}uberitalics!{/i} {b}UBER-BOLDINESS!{/b} okay, fun over. did that work...? |
| ||
okay... horrible failure. |
| ||
Use [ and ] , not { } |
| ||
oh... |