C 實現自定義處理窗體按鍵(整理)

2022-04-19 06:07:33 字數 851 閱讀 5721

很多時候我們需要用到使用c#**實現在窗體是在當前焦點時,進行其它多按鍵操作。比如類似於qq的ctrl+enter傳送資訊的操作。這時候使用form.

語法

[securitypermissionattribute(securityaction.linkdemand, flags = securitypermissionflag.unmanagedcode)]

protected override bool processcmdkey(

ref message msg,

keys keydata

)

引數

msg型別: system.windows.forms ..::

.message

%通過引用傳遞的 message

,它表示要處理的 win32 訊息。

keydata

型別: system.windows.forms ..::

.keys

keys

值之一,它表示要處理的鍵。

返回值型別: system ..::

.boolean

如果控制項處理並使用擊鍵,則為 true

;否則為 false

,以允許進一步處理。 

以下是我做的乙個例子,**實現的是在按下ctrl+enter的時候彈出乙個對話方塊,對話方塊內容是「1234567890」,標題是「提示資訊」:

protected override bool processcmdkey(ref message msg, keys keydata)

else

return base.processcmdkey(ref msg, keydata);

}

自定義形狀窗體

在用vb程式設計中,有時,我們需要使用乙個跟不規則背景有相同形狀的不規則窗體,怎麼辦呢?首先,我們需要設定無邊框窗體,即 borderstyle 0 其次,把背景覆蓋不住的窗體背景設定成透明。這需要用到api函式,private declarefunction getwindowlong lib u...

使用自定義窗體

一 從頭定義新自定義窗體 1.新建乙個目錄,再新建乙個工程。2.定義這個自動建立好的窗體為自己需要的樣式。3.包存這個窗體和單元到希望的目錄,工程檔案就儲存在新建的目錄。4.將沒有用的工程聯通目錄一併刪除。二 在新工程中使用自定義窗體 1.新建乙個工程。2.移除自動建立的單元 自動建立的form也會...

C winform 窗體自定義

今天看了篇技術帖,原來是可以不通過工具欄的現有工具進行布局的。以前 當我要有2個窗體的時候,就會拖拽2個 然後進行編輯。現在才明白,只要寫成類也是可以使用的。開啟乙個窗體的檔案,發現當自動新建個窗體時,其實是系統幫忙做了很多的準備工作。例如designer.cs中就有 initializecompo...