原创 C# sendMessage 和常用消息

C#調用SendMessage 用法 函數功能:該函數將指定的消息發送到一個或多個窗口。此函數爲指定的窗口調用窗口程序,直到窗口程序處理完消息再返回。該函數是應用程序和應用程序之間進行消息傳遞的主要手段之一。     函數原型:LRESU

原创 winform 通過消息實現非客戶端區域點擊事件

protected override void WndProc(ref Message m) { base.WndProc(ref m); switch (m.Msg) {

原创 自定義Winform窗體,加陰影效果

1.win32 api  public class BoxShadow { public const int CS_DROPSHADOW = 0x00020000;//可用背影框 public

原创 winform show 子窗體之後,保持當前窗體的狀態欄激活狀態

爲了提供用戶體驗,有需求是窗體的窗體不搶父窗體的激活狀態,因爲window激活、失活的時候狀態欄會有明顯的改變 以下說的窗體都是Show的情景,不是ShowDialog   1.在窗體下使用 ShowWithoutActivation

原创 winform 動態修改ClientRectangle

protected override void WndProc(ref Message m) { base.WndProc(ref m); switch

原创 winform 非客戶區域繪製

1.截取非客戶區域繪製消息 2.通過消息獲取 DC 和Graphics 3.執行繪製  protected override void WndProc(ref Message m)         {             base.

原创 js/ES6 去重複

1.常規 function distinct(array, keyFn) { if (!keyFn) { return array.filter(function (element, posit

原创 C#生成縮略圖 等比例縮放

/// 獲取縮略圖 public static Image GetThumbnailImage(Image image, int width, int height) { if (i

原创 C1FlexGrid 樹 模式下的自由拖拽

1.當C1FlexGrid爲樹模式的時候,實現和winform的TreeView控件那樣自由拖拽。 2.關鍵在於 這個三個 事件MouseDown;MouseMove;MouseUp; public partial class Form

原创 C# 解決DrawImage繪製圖片拉伸產生漸變

方法一: ImageAttributes ImgAtt = new ImageAttributes(); ;                 ImgAtt.SetWrapMode(System.Drawing.Drawing2D.Wr

原创 IMessageFilter實現鼠標鍵盤事件監聽

public class MyMessageFilter : IMessageFilter     {         const int WM_LBUTTONDOWN = 0x201;