怎么让 bsNone的form能Sizeable呢? 急,在线等啊,大侠指教~~~

coolfire729 2004-09-20 10:34:56
怎么让 bsNone的form能Sizeable呢? 急,在线等啊,大侠指教~~~
...全文
100 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
coolfire729 2004-09-20
  • 打赏
  • 举报
回复
To wfhlxl() :
我试了,这样还是没有达到bsNone的样式:也就是说窗体四周还有边框! 我现在是要将一张图片alClient到form上,如果用你的方法,运行时窗体四周还是有边框很难看,而bsNone后整个窗体都是被图片覆盖的。
午饭去了,谢谢各位的热心,揭帖了
wfhlxl 2004-09-20
  • 打赏
  • 举报
回复
put these into formcreate
width:=width-1`;
width:=width+1;
wfhlxl 2004-09-20
  • 打赏
  • 举报
回复
不把form的BordStyle设成bsNone
call up fucntion and 把form的BordStyle设成bsNone
在外观上有what deference.
coolfire729 2004-09-20
  • 打赏
  • 举报
回复
fei19790920(饭桶的马甲(抵制日货)) 的代码可以用,谢谢。
还有其他的答案嘛? 中午午饭前揭帖。谢谢各位捧场
coolfire729 2004-09-20
  • 打赏
  • 举报
回复
除非你不设成bsNone,可是我的窗体必须要是bsNone的,否则会很难看的。
coolfire729 2004-09-20
  • 打赏
  • 举报
回复
To wfhlxl() :

大侠,你的代码没用哦,你试试啊,把form的BordStyle设成bsNone,然后用你的代码,启动后不能sizeable的,~~~
yat5460 2004-09-20
  • 打赏
  • 举报
回复
wfhlxl 2004-09-20
  • 打赏
  • 举报
回复
on sentence:
setwindowlong(handle,GWL_STYLE, getwindowlong(handle,GWL_STYLE) and (not WS_CAPTION));
coolfire729 2004-09-20
  • 打赏
  • 举报
回复
我试了好多别人的方法都不行,这个厉害~!!
coolfire729 2004-09-20
  • 打赏
  • 举报
回复
强~~~~ 高手啊,解决拉,谢谢^_^ 揭帖
fei19790920 2004-09-20
  • 打赏
  • 举报
回复
unit Resize;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
procedure FormCreate(Sender: TObject);
procedure FormResize(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
lpRect:TRect;
mess1:string;
procedure hitit(var msg:TWMNCHITTEST);
message WM_NCHITTEST;
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.hitit(var msg: TWMNCHITTEST);
var
pt:TPoint;
begin
pt.x:=msg.XPos;
pt.y:=msg.YPos;
pt:=ScreenToClient(pt);

if ptInRect(Rect(lpRect.Right-5,lpRect.Top+5,
lpRect.Right+5,lpRect.Bottom-5),pt) then
msg.Result:=HTRIGHT;//右边
if ptInRect(Rect(lpRect.Left-5,lpRect.Top+5,
lpRect.Left+5,lpRect.Bottom-5),pt) then
msg.Result:=HTLEFT; //左边

if ptInRect(Rect(lpRect.Left+5,lpRect.Top-5,
lpRect.Right-5,lpRect.Top+5),pt) then
msg.Result:=HTTOP; //上边
if ptInRect(Rect(lpRect.Left+5,lpRect.Bottom-5,
lpRect.Right-5,lpRect.Bottom+5),pt) then
msg.Result:=HTBOTTOM; //下边

if ptinRect(Rect(lpRect.Left-5,lpRect.Top-5,
lpRect.Left+5,lpRect.Top+5),pt) then
msg.Result:=HTTOPLEFT;//左上角
if ptInRect(Rect(lpRect.Right-5,lpRect.Bottom-5,
lpRect.Right+5,lpRect.Bottom+5),pt) then
msg.Result:=HTBOTTOMRIGHT;//右下角

if ptInRect(Rect(lpRect.Left-5,lpRect.Bottom-5,
lpRect.Left+5,lpRect.Bottom+5),pt) then
msg.Result:=HTBOTTOMLEFT; //左下角
if ptInRect(Rect(lpRect.Right-5,lpRect.Left-5,
lpRect.Right+5,lpRect.Left+5),pt) then
msg.Result:=HTTOPRIGHT; //右上角

end;

procedure TForm1.FormCreate(Sender: TObject);
begin
lpRect:=ClientRect;
end;

procedure TForm1.FormResize(Sender: TObject);
begin
lpRect:=ClientRect;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
close;
end;

end.

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧