ZXman1000 Posted January 22, 2021 Share Posted January 22, 2021 I am working on a cab build running big box that has a main screen, marquee screen, and a 3rd screen on the CP. I currently plan to have the 2nd and 3rd screen displaying the same image (marquee) since there isn't any additional built in support to Big Box (this in itself will probably be an issue since the 2 screens are different aspect ratios). I am working on an AHK to have the third screen show a different image. Are there any gurus out there that have already done this? I see the 3rd screen question come up in the forums but haven't really seen any solutions out there. I am a complete noob on any level of programing or scripts writing but am putting in the effort to try to learn. Just thought if there was someone out there with a start or a direction to point me in could help a lot. I would love to have it set up to auto run the arcade controls image when selecting / starting a game. If its something I get working I will most definitely share. Quote Link to comment Share on other sites More sharing options...
JoeViking245 Posted January 22, 2021 Share Posted January 22, 2021 2 hours ago, ZXman1000 said: a start or a direction to point me in Install AutoHotKey. It doesn't have a built in editor, but any text editing program works. Notepad++ is always highly recommended. With AHK, I haven't seen a way to open a program (i.e. Paint or Photos) to a specific "monitor" (i.e. monitor #3). On the same token, you can't move a 'window' to a specific monitor # either. I think how it needs to be done with AHK is to open the image, then move the 'window' to the coordinates of the 3rd monitor (and then maybe Maximize the window. 2 hours ago, ZXman1000 said: am putting in the effort to try to learn. To get you started, you'll want the 'coordinates' of the 3 (actually just the 3rd) monitors. You can use SysGet for this. SysGet, MonitorCount, MonitorCount SysGet, MonitorPrimary, MonitorPrimary MsgBox, Monitor Count:`t%MonitorCount%`nPrimary Monitor:`t%MonitorPrimary% Loop, %MonitorCount% { SysGet, MonitorName, MonitorName, 2 SysGet, Monitor, Monitor, %A_Index% SysGet, MonitorWorkArea, MonitorWorkArea, %A_Index% MsgBox, Monitor:`t#%A_Index%`nName:`t%MonitorName%`nLeft:`t%MonitorLeft% (%MonitorWorkAreaLeft% work)`nTop:`t%MonitorTop% (%MonitorWorkAreaTop% work)`nRight:`t%MonitorRight% (%MonitorWorkAreaRight% work)`nBottom:`t%MonitorBottom% (%MonitorWorkAreaBottom% work) } When you run this (via AutoHotKey), you'll get 1 plus the_#_of_monitors_you_have popup messages. I have 2 monitors, so I get 3 messages. Here, my Primary monitor (#1) is a 1920 x 1080. My 2nd monitor (#2) is a 1280 x 1024 (don't ask. lol) and is LEFT of the Primary monitor (that's why its' coordinate is a negative number). WinMove is the next command you'll want to read up on. So if I wanted to move the "Notepad.exe" window to the upper left-hand corner of Monitor #2 and then Maximize that window to fullscreen SetTitleMatchMode, 2 WinMove, Notepad,, -1280, 0 WinMaximize, Notepad SetTitleMatch, 2 is used here to look for a window that "contains" the specified WinTitle parameter. "Notepad" in this case. If you open a new instance of Notepad, you will see that the actual WinTitle is "Untitled - Notepad". Play around with all this, study and learn, and when you get really stuck, feel free to ask. Again, this'll get you started. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.