如何使from在按下(显示桌面)按键后无效~!~!~!
还是显示在桌面上????
还是显示在桌面上????
解决方案 »
- 想交Delphi10编程高手?
- 初学三层开发,ClientDataSet在进行数据操作时,如何进行事务操作
- 非常奇怪的问题,求助!!!
- 想使用系统时间作一个文件的名字,设置了datetimepicker1的format为‘yyyyMMddHHmmss',保存时不对了。
- 我在Delphi中怎样得到WebBorwser组件中文档的二进制流?
- ADOdataset 的记录删除出错!这是什么原因?
- 新手做报表,在线急!
- UPDATE语句问题
- fastreport 列印
- 请教一个问题:如何编写一个位于最最上层的窗口,像oicq那样(我发现它能够位于最最上层)
- 如何将数据类型作为参数传入
- 求delphi兼职工作地点成都(急啊!!!!)
Windows, Messages;var
ThreadMessage: TMsg;
WindowHanlde: DWORD; //----窗体过程-----
function WindowProc(WinHanlde, MessageID, WParam, LParam : Longword):Longint; stdcall;
begin
Result := DefWindowProc(WinHanlde, MessageID, WParam, LParam);
if (MessageID = WM_DESTROY) then PostQuitMessage(0);
end; //---注册窗体类----
function RegWindowClass: Boolean;
var
WindowClass: TWndClass;
begin
{--填充结构体--}
WindowClass.Style := CS_HREDRAW or CS_VREDRAW; // 窗体类风格
WindowClass.lpfnWndProc := @WindowProc; // 指定窗体过程
WindowClass.cbClsExtra := 0; // 无额外类信息
WindowClass.cbWndExtra := 0; // 无额外窗体信息
WindowClass.hInstance := hInstance; // 实例句柄
WindowClass.hIcon := LoadIcon(0, IDI_QUESTION); // 指定图标
WindowClass.hCursor := LoadCursor(0, IDC_HAND); // 指定光标
WindowClass.hbrBackground := COLOR_WINDOW; // 预定义颜色
WindowClass.lpszMenuName := nil; // 没有菜单
WindowClass.lpszClassName := 'tLiuMaZi'; // 欲注册的类名
{--注册窗体类--}
Result := RegisterClass(WindowClass) <> 0;
end; //---建立主窗体------
procedure Create_Window;
begin
if (not RegWindowClass) then
begin
MessageBox(0, '注册窗体类失败' , nil, 0); Halt;
end;
WindowHanlde := CreateWindowEx(WS_EX_LEFT or WS_EX_LTRREADING or WS_EX_RIGHTSCROLLBAR or
WS_EX_TOPMOST or WS_EX_WINDOWEDGE or WS_EX_CONTROLPARENT,
'tLiuMaZi','Demo by LiuMazi',
WS_CAPTION or WS_VISIBLE or WS_CLIPSIBLINGS or
WS_CLIPCHILDREN or WS_SYSMENU or WS_THICKFRAME or WS_OVERLAPPED,
100, 100, 300, 200, 0, 0, hInstance, nil);
if (WindowHanlde = 0) then
begin
MessageBox(0, '建立主窗体失败', nil, 0); Halt;
end;
end;begin
Create_Window;
while GetMessage(ThreadMessage, 0, 0, 0) do
begin
TranslateMessage(ThreadMessage);//翻译按键消息为字符消息
DispatchMessage(ThreadMessage); //分发消息至窗体处理过程
end;
end.
begin
inherited CreateParams(Params);
Params.ExStyle := Params.ExStyle or WS_EX_TOPMOST or WS_EX_TOOLWINDOW;
Params.WndParent := 0;
end;
WindowHanlde := CreateWindowEx(WS_EX_TOPMOST ,
'tLiuMaZi','Demo by LiuMazi',
WS_CAPTION or WS_VISIBLE or
WS_SYSMENU or WS_MAXIMIZEBOX,
100, 100, 300, 200, 0, 0, hInstance, nil);
如果再or一个WS_MINIMIZEBOX就不行了.
procedure WMSYSCommand(var Msg: TWMSYSCommand); message WM_SYSCOMMAND;
procedure TFormEx.WMSYSCommand(var Msg: TWMSYSCommand);
begin
if Msg.CmdType = SC_MINIMIZE then
begin
DefaultHandler(Msg);
WindowState := wsMinimized;
end else
inherited;
end;
begin
SetWindowLong(Application.Handle,GWL_ExSTYLE,WS_EX_TOOLWINDOW);
end;