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

2021-04-07 05:55:33 字數 2135 閱讀 3206

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 做乙個類似於桌面外掛程式的程式 最近看到有人問如何做乙個 桌面天氣秀 類似的軟體,開始我以為做這個東西很複雜,因為覺得至少要傳遞 message 給desktop 但事實上,一試之後發現做這個程式竟然很簡單。首先,需要設定窗體樣式,這裡面要設定的有 l設定 formborderstyle ...