比如我在窗体上放了一个图样,我想在运行时就只显示该图像,而不要用标题栏等出现。我该怎么样来画?
大家给我写一下完整的代码,谢谢了!
大家给我写一下完整的代码,谢谢了!
解决方案 »
- ********零分求助********早上街上碰到一个求助的美女,家产都给她了.身无分文的!
- 加解密的问题,问什么结果不正常?
- 大家来看看我的异常捕捉的问题。
- 急急急急急,在局域网中,知道某一计算机的名称,如何获得它的ip地址,送高分
- 有关编译及发布delphi应用程序的问题
- 简单的问题,答对给分!
- 执行sql 'pack'的问题?
- 有谁知道叫什么名字,在那里可以下载???
- delphi怎么了?连主从表都不认,我设置的主从表,在field link designer对话框里,始终找不到要用的字段,只有首字段,不会是bug吧?
- 大家来讨论一下,什么水平就可以去找delphi的工作了
- DELPHI做串口通讯的问题,很急!!!!!!!!!
- 各位打工的朋友,你所在的公司、单位有时间让你们午睡吗?
image1.Align :=alClient;
把Image的Align属性设置为alClient,即为平铺的意思。
把Image的AutoSize的属性设置为True,即为让Pictrue自动充满Image。
把Form1的BorderStyle设置为bsNone即可。即为不要标题栏的意思。在Image的OnClick事件中,写
Close;//即为点击图片,关闭窗体。
在主窗体调用这个窗体,假设那个窗体名为Form1
Form1:=TFomr1.Creat(self);
Form1.Showmodal;
Form1.Free;
那你可以把窗体的透明度改为0
procedure TForm1.FormClick(Sender: TObject);
var
R : HRgn;
begin
if IsRound then
begin
SetWindowRgn(Handle,0,True);
DeleteObject(R);
IsRound := False;
end
else
begin
R := CreateEllipticRgn(-15,-15,Width+15,Height+15); SetWindowRgn(Handle,R,True);
IsRound := True;
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
IsRound := False;
end;
end.
////////////////////////////////////////////
四四方方的窗体也会变形,利用win32 API函数setwindowrgn就可以将窗口定义为任何形状,以下是将窗口定义为园角矩形的例子:
procedure TPortForm.FormCreate(Sender: Tobject);
var hr :thandle;
begin
hr:=createroundrectrgn(0,0,width,height,20,20);//定义园角矩形(win API函数)
setwindowrgn(handle,hr,true); //设置园角窗口
end;
为了使该窗口更好,应在onResize事件处理程序放相同的代码。
/////////////////////////////////////
用汉字做窗体形状
procedure TForm1.FormCreate(Sender: TObject);
var
rgn:HRGN;
begin
BeginPath(Canvas.Handle);
SetBkMode( Canvas.Handle, TRANSPARENT );
Canvas.Font.Name:= '宋体';
Canvas.Font.Size:=100;
Canvas.TextOut( 20, 20, '漂亮吗?');//用"漂亮吗?"作为form的形状
EndPath(Canvas.Handle);
rgn:= PathToRegion(Canvas.Handle);
SetWindowRgn( Handle, rgn, true );
end;