![]() |
【转帖】message bo
message box
please advise how to edit attached code so that the last message box appears once only.it currently appears multiple times depending on the number of points that are selected. option explicit dim swapp as sldworks.sldworks dim swmodel as modeldoc2 dim selmgr as selectionmgr dim swpoint as sketchpoint sub main() set swapp = application.sldworks set swmodel = swapp.activedoc set selmgr = swmodel.selectionmanager if selmgr.getselectedobjectcount = 0 then msgbox "nothing is selected!!!" msgbox "please select endpoint/s." exit sub end if dim points as integer points = selmgr.getselectedobjectcount2(-1) dim cpm as custompropertymanager dim i as integer for i = 1 to points set swpoint = selmgr.getselectedobject6(i, -1) swmodel.extension.custompropertymanager("").add2 "st.pt " & i, swcustominfotext, "x: " & round(swpoint.x, 5) * 1000 & vbcrlf & " y: " & round(swpoint.y, 5) * 1000 '& " z: " & swpoint.z msgbox "co-ordinates have been saved!" next end sub feroz mahomed windows xp professional sp2 sworks 2009 sp2 nvidia quadro fx1500 i run this macro on my machine and nothing happened. can you please explain what this macro do. also try putting next before the line for the msgbox if that helps. just a thought. next msgbox "co-ordinates have been saved!" end sub deepak gupta sw2007 sp5.0 sw2009 sp2.1 answer deepak, thanks for the help. the macro works fine now. the aim of the macro is to save the x,y & z co ordinates of a point or multiple points as custom properties.one has to select the endpoint/s of a line/s first before running the macro. feroz mahomed windows xp professional sp2 sworks 2009 sp2 nvidia quadro fx1500 originally posted by: feroz mahomed if selmgr.getselectedobjectcount = 0 then msgbox "nothing is selected!!!" msgbox "please select endpoint/s." exit sub end if you can also use the vbcrlf keywork in your message boxes rather than having two of them pop up. the vbcrlf keyword essentially creates a new line so using that you can have both messages on diferent lines on the same message box. so having msgbox "nothing is selected!!!" & vbcrlf & "please select endpoint/s." will have both messages in different lines so that it will be clear to the user. cheers, --stav. in this world i am nobody... and nobody is perfect ;) !!! --------- solidworks office 2008 sp4.0 dell precision pws390 nvidia quadro fx 3450/4000 sdi stavros, thank you for the input. i have changed the code as per your suggestion and it works fine. feroz mahomed windows xp professional sp2 sworks 2009 sp2 nvidia quadro fx1500 quick |
所有的时间均为北京时间。 现在的时间是 03:39 AM. |