http://www.codeproject.com/Articles/16362/Bring-your-frame-window-a-shadow http://www.codeproject.com/Articles/19213/An-Alpha-Channel-Composited-Windows-Form-with-Desi http://www.codeproject.com/Articles/378818/Custom-Button-Issues-with-Focus-Border-…
介绍: Layered Windows是windows窗口中的一类,提供类似半透明的效果(阿尔法混合).半透明效果是字面上有能看出来的,但实际上根据MSND,该类型的窗口还能更好的支持非矩形的窗口,使之显示效果更平滑流畅(暗地里猜测是使用了硬件加速而达到的效果).在win8之前WS_EX_LAYERED只能用于顶层窗口,win8及之后版本子窗口也可以使用. 使用: 首先要做的就是在CreateWindowEx()时加入 WS_EX_LAYERED风格.之后调用SetLayeredWindowAt…
static void* WndProc(void* hwnd, uint uMsg, void* wParam, void* lParam) { switch (uMsg) { case WM_PAINT: case WM_CTLCOLORMSGBOX: case WM_CTLCOLOREDIT: case WM_CTLCOLORLISTBOX: case WM_CTLCOLORBTN: case WM_CTLCOLORDLG: case WM_CTLCOLORSCROLLBAR: case…
https://msdn.microsoft.com/en-us/library/windows/desktop/ms632599(v=vs.85).aspx#owned_windows https://msdn.microsoft.com/en-us/library/windows/desktop/ms633515(v=vs.85).aspx http://www.cnblogs.com/findumars/p/6348012.html…
fmx 和 vcl 不一样, fmx 的阴影可以通过2D显示出来. VCL 无标题栏窗口的阴影很麻烦 280425268 我也是用两个窗口做阴影,并重绘了非客户区,不过阴影是基础自TwinControl,没继承TFrom.用spy探测office 2013,发现他也是用了2个句柄window,office 2013阴影也是一个有句柄的window做的,而QQ只用了一个窗口,使用WS_EX_LAYERED风格,阴影和界面全在一个窗口画出来 两个窗口怎么叠加??自己窗口不用的原因是因为,不能影响当前…
Win32API.cs   using System;using System.Drawing;using System.Runtime.InteropServices;using Lordal.Window.Form.Lib.General;using Lordal.Window.Form.Lib.Win32; namespace Lordeo.Framework{ /// /// Windows API Functions /// public class Win32API { #regio…
以前整理的Win32 API,可以直接在C#中直接调用,在做WinForm时还是很有帮助的.以前用在一个多窗口界面中,当轮询窗口时,调用API会提高很多效率. 源码下载 http://files.cnblogs.com/lordeo/win32api.rar 整理的Win32 API,可以直接在C#中直接调用,在做WinForm时还是很有帮助的. 源码包含三个文件 Win32API.cs, using System; using System.Drawing; using System.Runt…
前一阵突然想起了9月份电面某公司实习时的二面题,大概就是说怎么用Win32 API实现一个透明的窗口,估计当时我的脑残答案肯定让面试官哭笑不得吧.所以本人决定好好研究下这个问题.经过一下午的摸索,基本掌握了使用Win32 API创建各种匪夷所思的窗口的基本思路. (以下文字基于本人的个人理解,由于本人技术和经验原因不保证正确性,希望各位不吝指正) 首先我们需要了解一些基础知识. 1.Layered Windows.这是Windows2000开始引入的新概念,重新定义了窗口的Hit Testing…
Win32 透明效果相关基础知识 Layered Windows 分层窗口.这是Windows2000开始引入的概念,重新定义了窗口的Hit Testing方法,以前都是把窗口按rectangle的方式裁剪,而把窗口加上WS_EX_LAYERED的Style后就可以根据窗口的形状和像素 值进行Hit Testing,这样我们的不规则窗口就变成了真正意义上的独立窗口,而不是传统的被一个不可见的矩形窗口所包含. 分层窗口重绘方式.透明效果产生 创建不规则窗口的三种方式 通过区域相关API设置窗口的区…
以前整理的Win32 API,可以直接在C#中直接调用,在做WinForm时还是很有帮助的.以前用在一个多窗口界面中,当轮询窗口时,调用API会提高很多效率. 源码下载 http://files.cnblogs.com/lordeo/win32api.rar 源码包含三个文件Win32API.cs,Enums.cs,Structs.cs分别如下 Win32API.cs 复制  保存 using System;using System.Drawing;using System.Runtime.In…