therks Posted December 19, 2004 Share Posted December 19, 2004 I was trying something just earlier, not out of any real need, more just a proof of concept kind of thing, and ran into a bit of a problem I hadn't expected. See, the way I figured things went GUI wise, was that the z-order of controls pertained to the order of their creation. ie: If Ctrl1 and Ctrl2 are overlapped, then whichever was created second would be on top of the first. For example: $gui_pic_Main = GuiCtrlCreatePic('main.gif', 0, 0, 275, 116); $gui_pic_Close = GuiCtrlCreatePic('close.gif', 265, 4, 7, 7); Then Close would be above Main, hence if you clicked Close, it would return it's ID, and if you clicked anywhere else (Main takes up the entire area of the GUI) then Main's ID would be returned. But this is not how it works. Instead, everywhere I click returns Main's ID. Now, just so I could say I tried everything, I did attempt creating the controls in reverse. This resulted in the correct result event wise, but not graphically. Now, as it stands, I don't need this functionality, I just thought it would be a neat idea to try, but I was wondering if there was any possibility that a fix for this would be rather simple on the developers end. If not, then I certainly don't expect it. It'd be nice, but I'm not greedy (especially for something I don't currently need). But if it can be changed/fixed, I think it'd be cool, and with it in mind, I'm sure I, or someone else, could whip up some fairly neat scripts. Anyway, I've attached an example of the script I was trying out. It's just a recreation of the Winamp window. The attempted working controls are the 5 play control buttons (Previous, Play, Pause, Stop, Next) and the top right corner buttons (Minimize, "Maximize", Close). You'll note that clicking any of them produces the same result. Also, right clicking anywhere will change the skin. You'll have to keep the paths in order when you extract the files, otherwise the skins won't work. My AutoIt Stuff | My Github Link to comment Share on other sites More sharing options...
this-is-me Posted December 19, 2004 Share Posted December 19, 2004 To answer your question as quickly as possible, the bottom control is the only one that will notify. Who else would I be? Link to comment Share on other sites More sharing options...
therks Posted December 21, 2004 Author Share Posted December 21, 2004 (edited) Weird. Any suggestions then? Edited December 21, 2004 by Saunders My AutoIt Stuff | My Github Link to comment Share on other sites More sharing options...
jpm Posted December 21, 2004 Share Posted December 21, 2004 Weird. Any suggestions then?<{POST_SNAPBACK}>Sorry for not searching an answer.I don't know how to force the overlap control to notify but I know how to not notify$gui_pic_Main = GuiCtrlCreatePic('default.gif', 0, 0, 275, 116,0);Merry Christmas Link to comment Share on other sites More sharing options...
CyberSlug Posted December 21, 2004 Share Posted December 21, 2004 (edited) Z-order is related to creation but in the reverse order that you think.You can change the tabstop/z-order with something like this codeEDIT: You could also create the main gif last and with the WS_CLIPSIBILINGS style:Global $WS_CLIPSIBLINGS = 0x4000000; $gui_pic_Main = GuiCtrlCreatePic('default.gif', 0, 0, 275, 116, $WS_CLIPSIBLINGS); Edited December 21, 2004 by CyberSlug Use Mozilla | Take a look at My Disorganized AutoIt stuff | Very very old: AutoBuilder 11 Jan 2005 prototype I need to update my sig! Link to comment Share on other sites More sharing options...
jpm Posted December 21, 2004 Share Posted December 21, 2004 Z-order is related to creation but in the reverse order that you think.You can change the tabstop/z-order with something like this codeEDIT: You could also create the main gif last and with the WS_CLIPSIBILINGS style:Global $WS_CLIPSIBLINGS = 0x4000000; $gui_pic_Main = GuiCtrlCreatePic('default.gif', 0, 0, 275, 116, $WS_CLIPSIBLINGS);<{POST_SNAPBACK}>I am not sure the overlap is related to the tabstop.For $WS_CLIPSIBLINGS it look lile you just suppress the notification as 0 does Link to comment Share on other sites More sharing options...
therks Posted December 24, 2004 Author Share Posted December 24, 2004 Sorry for not searching an answer.I don't know how to force the overlap control to notify but I know how to not notify$gui_pic_Main = GuiCtrlCreatePic('default.gif', 0, 0, 275, 116,0);Merry Christmas <{POST_SNAPBACK}>Awesome, I never even thought about that.Thanks a bunch! My AutoIt Stuff | My Github Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now