用c#做乙個像flashget的懸浮視窗,其實很簡單,不像以前需要呼叫很多系統api。大致的步驟如下。
首先是主窗體部分,即要判斷窗體的狀態來決定是否顯示懸浮視窗。
區域性成員宣告:
private formwindowstate fwsprevious;
private frmtopmost mytopmost;
主窗體的load事件:
private void frmmain_load(object sender, system.eventargs e)
主窗體的sizechanged事件:
private void frmmain_sizechanged(object sender, system.eventargs e)
else if( this.windowstate != fwsprevious )
}然後,就是還原視窗方法,即供懸浮視窗進行呼叫的。
///
/// restore window state
///
public void restorewindow()
下來就是懸浮視窗部分**,首先要設定其窗體的formborderstyle為none,然後設定其的topmost為true,接下來,就是主要是三個滑鼠事件的處理,以下,具體說明如何實現的。
區域性成員宣告。
private point ptmousecurrrnetpos, ptmousenewpos, ptformpos, ptformnewpos;
private bool blnmousedown=false;
private frmmain pparent;
懸浮視窗的建構函式。
public frmtopmost( frmmain pmain )
懸浮視窗的load事件。
private void frmtopmost_load(object sender, system.eventargs e)
主要的三個滑鼠事件,即mousedown、mousemove、mouseup三個事件。
private void frmtopmost_mousemove(object sender, system.windows.forms.mouseeventargs e)
}private void frmtopmost_mousedown(object sender, system.windows.forms.mouseeventargs e)
}private void frmtopmost_mouseup(object sender, system.windows.forms.mouseeventargs e)
然後就是雙擊懸浮窗體,進行恢復主窗體。
private void frmtopmost_doubleclick(object sender, system.eventargs e)
private void switchtomain()
此外,還可以給懸浮視窗新增contextmenu,來輔助操作,這裡就不細說了。
private system.windows.forms.contextmenu mnupopup;
private system.windows.forms.menuitem mnumainwindow;
private system.windows.forms.menuitem mnuexit;
private void mnumainwindow_click(object sender, system.eventargs e)
private void mnuexit_click(object sender, system.eventargs e)
以上介紹的就是c# winform實現乙個懸浮視窗程式,希望對你有所幫助。
vc 實現懸浮窗,迅雷360懸浮球效果
1.setwindowrgn建立圓角懸浮窗dlgfloat rgn.createroundrectrgn rect.left,rect.top,rect.width rect.height 13,13 m rgnwnd.deleteobject m rgnwnd.createrectrgn 0,0,...
vue 側邊懸浮 vue實現移動端懸浮窗效果
本文講述,在使用vue的移動端實現類似於iphone的懸浮窗的效果。相關知識點 touchstart當在螢幕上按下手指時觸發 touchmove 當在螢幕上移動手指時觸發 touchend 當在螢幕上抬起手指時觸發 mousedown mousemove mouseup對應的是pc端的事件 touc...
vue 側邊懸浮 vue實現移動端懸浮窗效果
本文講述,在使用vue的移動端實現類似於iphone的懸浮窗的效果。相關知識點 touchstart當在螢幕上按下手指時觸發 touchmove 當在螢幕上移動手指時觸發 touchend 當在螢幕上抬起手指時觸發 mousedown mousemove mouseup對應的是pc端的事件 touc...