如何用C 做乙個懸浮視窗程式

2021-04-06 18:11:54 字數 2135 閱讀 5816

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 做乙個懸浮視窗程式

如何用c 做乙個懸浮視窗程式 用c 做乙個像 flashget 的懸浮視窗,其實很簡單,不像以前需要呼叫很多系統 api。大致的步驟如下。首先是主窗體部分,即要判斷窗體的狀態來決定是否顯示懸浮視窗。區域性成員宣告 private formwindowstate fwsprevious private...

愚翁專欄 如何用C 做乙個懸浮視窗程式

用 c 做乙個像 flashget 的懸浮視窗,其實很簡單,不像以前需要呼叫很多系統 api。大致的步驟如下。首先是主窗體部分,即要判斷窗體的狀態來決定是否顯示懸浮視窗。區域性成員宣告 private formwindowstate fwsprevious private frmtopmost my...

用C 做乙個懸浮視窗

用c 做乙個懸浮視窗 含三種移動無標題窗體的辦法 2006年08月24日 星期四 16 36 今天看幾個c 原始碼,再到愚翁專欄 第一步 建立乙個窗體,設定其屬性 this.formborderstyle system.windows.forms.formborderstyle.none this....