資源描述:
《彈出的對話框位置問題》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。
1、彈出的對話框位置問題彈出的對話框位置問題 使用WINCC庫中的閥門、電機(jī)等圖標(biāo),單擊他們彈出操作的對話框,現(xiàn)在的問題是彈出的對話框是在鼠標(biāo)點(diǎn)擊的位置附近出來,但是點(diǎn)擊監(jiān)控畫面邊緣的圖標(biāo)時發(fā)現(xiàn),彈出的對話框超出了畫面的邊緣,還得用鼠標(biāo)拖拽回來,(因?yàn)槭歉脑祉?xiàng)目,原制作者在PLC中的地址不規(guī)律,無法用結(jié)構(gòu)變量,只能把閥門的操作對話框逐一制作出來,我使用VB程序加畫面窗口做的,)程序如下: SubMouseDown(ByValItem,ByValButton,ByValShift,ByValx,ByValy)
2、 DimPIC SetPIC=ScreenItems(“畫面窗口1”)”“““““““選擇畫面窗口 ScreenItems.Item(“畫面窗口1”).PICTURENAME=“閥門號” PIC.Visible=False PIC.Left=item.Left+10 PIC.Top=item.Top ScreenItems(“畫面窗口1”).Visible=True EndSub 不知道怎么解決,請賜教! 問題補(bǔ)充: 能不能來個VB的程序判斷離上下、左右的位置啊 最佳答案
3、 試試這個全局函數(shù)吧希望對你有幫助 你只需修改DialogName參數(shù) SubShowDialog(ByvalDialogName,Byvalx,Byvaly) ”“““““““對話框顯示位置自動調(diào)整函數(shù)函數(shù) ”“““““““鼠標(biāo)事件按左鍵事件中調(diào)用 ”“““““““DialogName為要顯示對象的名稱x,y為鼠標(biāo)點(diǎn)擊的位置(鼠標(biāo)左鍵事件中調(diào)用直接為X,Y) ”“““““““例:CallShowDialog(“1號鼓風(fēng)機(jī)放空氣閥_Dialog”,x,y) ”“““
4、““““by:逐漸變暈 DimPageWidth,PageHeight,DiaWidth,DiaHeight,PX,PY,Constval Constval=30”“““““““調(diào)整顯示對話框距離鼠標(biāo)點(diǎn)擊點(diǎn)距離 PageWidth=HMIRuntime.Screens(““).Width PageHeight=HMIRuntime.Screens(““).Height DiaWidth=ScreenItems(DialogName).Width DiaHeight=ScreenItems(Dial
5、ogName).Height px=x+Constval PY=y+Constval Ifx+DiaWidth+Constval>=PageWidthThen PX=x-Constval*2-DiaWidth EndIf Ify+DiaHeight+Constval>=PageHeightThen PY=y-Constval*2-DiaHeight EndIf ScreenItems(DialogName).Left=PX ScreenItems(DialogName).Top=PY S
6、creenItems(DialogName).Visible=True EndSub SubEndDialog(ByvalDialogName) DimPageWidth PageWidth=HMIRuntime.Screens(““).Width ScreenItems(DialogName).Left=ScreenItems(DialogName).Left+PageWidth EndSub