NativeWindow_01
1、
“{$O-}”关闭优化
“{$O-}”打开优化
2、
unit NativeWindow; interface uses
Windows, Messages, SysUtils; procedure CreateWindow; implementation function ProcWindow(_hWnd :HWND;
_uMsg :UINT;
_wParam :WPARAM;
_lParam :LPARAM):longint;stdcall;
var
hDc1 :HDC;
ps :PAINTSTRUCT;
begin
if (_uMsg = WM_LBUTTONUP) then
begin
MessageBox(, 'Up', '', );
end
else if (_uMsg = WM_PAINT) then
begin
hDc1 := BeginPaint(_hWnd, ps);
TextOut(hDc1, , , 'ASDFG zxcvb', strlen('ASDFG zxcvb'));
EndPaint(_hWnd, ps);
Result := ;
Exit;
end
else if (_uMsg = WM_DESTROY) then
begin
DestroyWindow(_hwnd);
PostQuitMessage(); Result := ;
Exit;
end;
Result := DefWindowProc(_hWnd, _uMsg, _wParam, _lParam);
end; {$O-}
procedure CreateWindow;
var wndcls :WNDCLASS;
hInstance :THandle;
hWnd1 :HWND;
iErr :integer;
begin
hInstance := Windows.GetModuleHandle(nil); ZeroMemory(@wndcls, sizeof(wndcls));
wndcls.cbClsExtra := ;
wndcls.cbWndExtra := ;
wndcls.hbrBackground := HBRUSH(GetStockObject(WHITE_BRUSH)); // 背景画刷
wndcls.hCursor := LoadCursor(, IDC_CROSS);
wndcls.hIcon := LoadIcon(, IDI_ERROR); // 窗口图标
wndcls.hInstance := hInstance;
wndcls.lpfnWndProc := @ProcWindow;
wndcls.lpszClassName:= 'zc20110929';
wndcls.lpszMenuName := nil;
wndcls.style := CS_HREDRAW or CS_VREDRAW;
RegisterClass(wndcls); hWnd1 := CreateWindowEx(
WS_EX_CLIENTEDGE,
wndcls.lpszClassName,
'ZC Window',
WS_OVERLAPPEDWINDOW,
, ,
, ,
,
, //g_hMenu,
hInstance,
);
if (hWnd1 = ) then
iErr := GetLastError; // ShowWindow(hWnd1, SW_SHOWNORMAL);
UpdateWindow(hWnd1);
end;
{$O+} end.
3、
NativeWindow_01的更多相关文章
随机推荐
- mvn命令上传jar
开发过程中涉及到下载第三SDK包,而本身项目是基于gradle的,所以为了项目中使用sdk包,需要将包加入到自己的仓库 1.利用nexus创建自己的第三方库thirdparty 类型hosted 2. ...
- Subscription
- 改变label中的某字体颜色
NSString *allString=@"你家在哪里,需要我送你么"; NSString *subString=@"在哪里"; UILabel *string ...
- Map,Filter和Reduce
转自:https://www.aliyun.com/jiaocheng/444967.html?spm=5176.100033.1.13.xms8KG 摘要:Map,Filter和Reduce三个函数 ...
- Angular学习笔记—路由(转载)
创建路由 1.首先安装 Angular Router.你可以通过运行以下任一操作来执行此操作: yarn add @angular/router # OR npm i --save @angular/ ...
- TimeQuest学习总结
1. 基本时钟约束:creat_clock 2. 生成时钟约束:creat_generated_clock 3. I/O输入输出约束:(1)纯组合逻辑:set_max_delay & set_ ...
- mysql内置数据库
1 mysql本地连接数据库 >mysql -h localhost -u root -proot 注意-p后面没有空格,是直接跟上密码 或者 >mysql -h localhost ...
- network FAQ
@1: 参考 ifconfig eth0之后IP总是自动清除,解决方法, 修改vim /etc/network/interfaces 然后执行sudo /etc/init.d/networking r ...
- 空基类优化empty base class optimization
1.为什么C++中不允许类的大小是0 class ZeroSizeT {}; ZeroSizeT z[10]; &z[i] - &z[j]; 一般是用两个地址之间的字节数除以类型大小而 ...
- SQL联接 外联接 内联接 完全联接 交叉联接
联接分为: 内联接 [inner join] 外联接 (左外联接,右外联接) [left join/left outer jo ...