截止2004年12月16日 |
本站源码总量RAR压缩为 4,206,733 KB。其中免费源码为 1,124,495 KB,商业源码为 3,082,238 KB!
C/C++ |
129,555 KB |
Delphi |
1,258,381 KB |
Java |
120,937 KB |
.Net |
36,886 KB |
PowerBuilder |
954,525 KB |
Visual Basic |
923,454 KB |
ASP |
259,795 KB |
JSP |
4,987 KB |
其他 |
94,723 KB |
|
|
使MDI窗口有一个背景图象或使它平铺 |
|
确定你已在在你的主窗体对象中加入了下面的变量:
FClientInstance : TFarProc;
FPrevClientProc : TFarProc;
{ MDI的背景代码 }
procedure TMainForm.ClientWndProc var Message: TMessage);
var
Dc : hDC;
Row : Integer;
Col : Integer;
begin
with Message do
case Msg of
WM_ERASEBKGND:
begin
Dc := TWMEraseBkGnd Message).Dc;
// 在DC上平铺图象
for Row := 0 to ClientHeight div Image1.Picture.Height do
for Col := 0 to ClientWidth div Image1.Picture.Width do
BitBlt Dc,
Col * Image1.Picture.Width,
Row * Image1.Picture.Height,
Image1.Picture.Width,
Image1.Picture.Height,
Image1.Picture.Bitmap.Canvas.Handle,
0,
0,
SRCCOPY);
Result := 1;
end;
else // 传递其他消息
Result := CallWindowProc FPrevClientProc,
ClientHandle,
Msg,
wParam,
lParam);
end;
end;
- 在你的主窗体的OnShow事件中加入以下代码:
// MDI背景平铺代码,与WndProc链接
FClientInstance := MakeObjectInstance ClientWndProc);
FPrevClientProc := Pointer GetWindowLong ClientHandle,GWL_WNDPROC));
SetWindowLong ClientHandle,GWL_WNDPROC,LongInt FClientInstance));
- 现在你有一个背景了!
|
|
文章出处: |
|
发表时间:2004-12-23 16:47:41 |
共1条数据记录,分1页显示 上一页 < [1] > 下一页 |
|