会。。不过你在ONKEdown中判断,如果是ALT+F4就屏蔽掉。procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;Shift: TShiftState); begin if (ssAlt in shift)and(key=115) then key:=0; end;
是这样的,TCheckGroup中有个CheckButton按钮,我点击后,要显示一张图片浮在上面,持续2秒钟的时间;可是现在TCheckGroup上面并没有图片盖住,图片而是画在窗体里面,就像背景图一样。 这是我的代码: procedure TWordGraspTest.OnOptionClick(Sender: TObject; Index: Integer; NewState: TCheckBoxState); var Bitmap: TBitmap; X, Y: Integer; ImageDir: string; ImgFace: TImage; begin ImageDir := ExtractFilePath(Application.ExeName) + 'Skin\Section\'; Bitmap := TBitmap.Create; try Bitmap.LoadFromFile(ImageDir + 'face' + IntToStr(AFace) + '.bmp'); X := (RzBackground1.Width - Bitmap.Width) div 2; Y := (RzBackground1.Height - Bitmap.Height) div 2; DrawTBitmap(Self.Canvas.Handle, Bitmap, X, Y, clWhite); //透明绘图算法,这里就不贴出来了,我用的是窗体的DC; finally Bitmap.Free; end; end;
但是我就是不明白,为什么绘画在其他控件的后面,而不是前面。
begin
if (ssAlt in shift)and(key=115) then key:=0;
end;
这是我的代码:
procedure TWordGraspTest.OnOptionClick(Sender: TObject; Index: Integer;
NewState: TCheckBoxState);
var
Bitmap: TBitmap;
X, Y: Integer;
ImageDir: string;
ImgFace: TImage;
begin
ImageDir := ExtractFilePath(Application.ExeName) + 'Skin\Section\';
Bitmap := TBitmap.Create;
try
Bitmap.LoadFromFile(ImageDir + 'face' + IntToStr(AFace) + '.bmp');
X := (RzBackground1.Width - Bitmap.Width) div 2;
Y := (RzBackground1.Height - Bitmap.Height) div 2;
DrawTBitmap(Self.Canvas.Handle, Bitmap, X, Y, clWhite); //透明绘图算法,这里就不贴出来了,我用的是窗体的DC;
finally
Bitmap.Free;
end;
end;