C 一些有用的東西

2021-07-02 05:24:52 字數 1515 閱讀 4810

雜:

1.自定義控制項public屬性如何不在initializecomponent中生成?

可以使用特性:

[designerserializationvisibility(designerserializationvisibility.hidden)]

2.在一些無法在窗體內捕獲的事件可以使用imessagefilter介面來實現。

3.form.activeform靜態屬性用來獲取當前啟用的視窗。可以用來判斷程式時候是啟用狀態的。

4. control.pointtoscreen用來獲取在螢幕中的座標。

control.pointtoclient用來獲取在控制項中的座標。

control.mouseposition用來獲取滑鼠在螢幕上的座標。

上面3個組合可以用來做一些複雜的控制項互動。

5. controls.getchildindex,controls.setchildindex可以用來改變控制項布局。

6. 該函式返回與指定視窗有特定關係(如z序或所有者)的視窗控制代碼。

[dllimport("user32.dll")]

public static extern intptrgetwindow(intptr hwnd, uint wcmd);

可以實現一些窗體上的互動。

7.xml序列化反序列化物件:

public

static

string

serializexml

<

t>

(t obj)

} public

static

t deserializexml

<

t>

(string

xmlobj)

}繪圖相關:

1.      control. region屬性用來限定控制項的形狀。可以用來繪製異型控制項。

2.      控制項內部操作解決閃爍問題

protected override void onpaintbackground(painteventargse)

protected override voidonpaint(painteventargs e)

this.doublebuffered = true;

if(this.backgroundimage != null)

e.graphics.smoothingmode=system.drawing.drawing2d.smoothingmode.highquality;

e.graphics.drawimage(this.backgroundimage,

new system.drawing.rectangle(0, 0, this.width, this.height),

0, 0, this.backgroundimage.width,

this.backgroundimage.height,

system.drawing.graphicsunit.pixel);

base.onpaint(e);

c 與c 互動的一些東西

最近做乙個專案,對方公司只提供了乙個c 的dll,但沒封住,c 無法dllimport.所以只能自己寫c 來封住了。對方的dll只接收yuv420的格式,所以在c 裡用opencv來轉換。本來想c 來寫,但總覺得麻煩。c public void do bitmap bp bitmap outimg ...

一些有用的函式

1.memset pbuffer,0,pbuffer length 初始化一段記憶體空間,初始值為0 2.sprintf pbuffer,fomatstring,作用和printf差不多,不同的是輸出到指定的快取pbuffer中,而不是輸出到dos控制台。3.sscanf pbuffer,fomat...

一些有用的轉換

relation with conversion 1.wchar tchar widechartomultibyte wcstombs cstring atl macros ole2a w2t w2ct lstrcpy note include swprintf wchar,l ls char wc...