tgjang Posted July 13, 2023 Share Posted July 13, 2023 (edited) Hi I think it would be very user friendly if the IronCad PropertysTab window could apply a Shotcut Key. Therefore, End user would be grateful if somebody could tell me how I can assign a Shotcut Key to the PropertyTab. If it is not possible, I have to develop a program using AutoHotKey. It's a similar story, but we've created an AutoHotKey programme for the "Ctrl+`" shotcut key to switching between the Scene Tab and Properties Tab, which is very useful as it saves us a lot of mouse clicks. Thanks. Edited July 22, 2023 by tgjang Quote Link to comment Share on other sites More sharing options...
tgjang Posted July 15, 2023 Author Share Posted July 15, 2023 I looked for the command, but couldn't find it. So I tried to program it using AutoHotKey, but the only way to recognise the menu is by coordinates, so that's not possible either. Quote Link to comment Share on other sites More sharing options...
Bertrand Kim Posted July 15, 2023 Share Posted July 15, 2023 Hi Jang, You can not pick anything with AHK from ahk_pid or ahk_id or Button's class because those are random. I went through a lot of frustration trying to figure this out. You can only pick that from image search or find text(The library that seraching image by text). I've written code to open the Part Properties or Smart Painter in this way. ^F1:: ; Open ICS Properties dialog ;ICS&ICD SHOULD USE GRAY 210 TO CUT PROPERTIES... text MouseClick, right MouseGetPos, xpos, ypos BlockInput, on Sleep, 300 if (A_ScreenDPI = 96) { Text:="|<>*195$17.000zz1022zI5yc/xELuUjp1TW2044089UEHyUa11022047zs000U" if (ok:=FindText(X, Y, -1842-150000, 257-150000, -1842+150000, 257+150000, 0, 0, Text, , , , , , 6)) { FindText().Click(X, Y, "L") } else { Sleep, 300 Text:="|<>*195$17.000zz1022zI5yc/xELuUjp1TW2044089UEHyUa11022047zs000U" if (ok:=FindText(X, Y, -1842-150000, 257-150000, -1842+150000, 257+150000, 0, 0, Text, , , , , , 6)) { FindText().Click(X, Y, "L") } else { Sleep, 300 Text:="|<>*195$17.000zz1022zI5yc/xELuUjp1TW2044089UEHyUa11022047zs000U" if (ok:=FindText(X, Y, -1842-150000, 257-150000, -1842+150000, 257+150000, 0, 0, Text, , , , , , 6)) { FindText().Click(X, Y, "L") } else { Sleep, 600 Text:="|<>*195$17.000zz1022zI5yc/xELuUjp1TW2044089UEHyUa11022047zs000U" if (ok:=FindText(X, Y, -1842-150000, 257-150000, -1842+150000, 257+150000, 0, 0, Text, , , , , , 6)) { FindText().Click(X, Y, "L") } else { Sleep, 600 Text:="|<>*195$17.000zz1022zI5yc/xELuUjp1TW2044089UEHyUa11022047zs000U" if (ok:=FindText(X, Y, -1842-150000, 257-150000, -1842+150000, 257+150000, 0, 0, Text, , , , , , 6)) { FindText().Click(X, Y, "L") } else { MsgBox, 48, This dialog will be close 5seconds later, Failed to find Properties icon. Report it to me, 5 } } } } } } else if (A_ScreenDPI = 120) { } else if (A_ScreenDPI = 144) { } else { MsgBox, 48, Hi, Your current screen DPI is not supported!`nAsk about this msg to Bertrand Kim!`nExiting... , 4 } BlockInput, off MouseMove, %xpos%, %ypos% return ^F2:: ; Open Parameters dialog MouseClick, right MouseGetPos, xpos, ypos Sleep, 500 BlockInput, on if (A_ScreenDPI = 96) { Text:="|<>*199$13.DzY1zzDzbznztYYzyN9DzaGHztU" if (ok:=FindText(X, Y, -1842-150000, 257-150000, -1842+150000, 257+150000, 0, 0, Text)) { FindText().Click(X, Y, "L") }else { MsgBox, 48, This dialog will be close 5seconds later, Failed to find Parameters icon. Report it to me, 5 } } else if (A_ScreenDPI = 120) { } else if (A_ScreenDPI = 144) { } else { MsgBox, 48, Hi, Your current screen DPI is not supported!`nAsk about this msg to Bertrand Kim!`nExiting... , 4 } BlockInput, off MouseMove, %xpos%, %ypos% return ^F3:: ; Open SmartPaint dialog MouseClick, right MouseGetPos, xpos, ypos Sleep, 400 BlockInput, on if (A_ScreenDPI = 96) { Text:="|<>*151$14.00U040100U0E1c0w0S0D07k1w0y0T0DU2" if (ok:=FindText(X, Y, -1842-150000, 257-150000, -1842+150000, 257+150000, 0, 0, Text)) { FindText().Click(X, Y, "L") }else { MsgBox, 48, This dialog will be close 5seconds later, Failed to find SmartPaint icon. Report it to me, 5 } } else if (A_ScreenDPI = 120) { } else if (A_ScreenDPI = 144) { } else { MsgBox, 48, Hi, Your current screen DPI is not supported!`nAsk about this msg to Bertrand Kim!`nExiting... , 4 } BlockInput, off MouseMove, %xpos%, %ypos% Kim Quote Link to comment Share on other sites More sharing options...
tgjang Posted July 22, 2023 Author Share Posted July 22, 2023 Thanks. Kim I tried converting your autohotkey 1.0 program to autohotkey 2.0 version and it didn't work, so I put it on hold. IronCAD developers 1. Part Properties Tab, 2. Scene, Properties tab toggle, The above 2 menu's shotcut key function should be added to IronCAD. Quote Link to comment Share on other sites More sharing options...
Bertrand Kim Posted August 7, 2023 Share Posted August 7, 2023 (edited) On 7/22/2023 at 9:47 AM, tgjang said: I tried converting your autohotkey 1.0 program to autohotkey 2.0 version and it didn't work, so I put it on hold. Hi Jang, Maybe that is a library issue. I used some libraries work on AHK v1. Anyways...why did you try that? I think there is no huge merit using AHK v2 for now Kim Edited August 7, 2023 by Bertrand Kim Quote Link to comment Share on other sites More sharing options...
tgjang Posted August 15, 2023 Author Share Posted August 15, 2023 Thank you kim. It doesn't work with AutoHotKey Version 2.0 It would be much faster and simpler for the IronCAD developer to provide a shotcut key function. Although I'm not sure when they will add it. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.