線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:897
推到 Plurk!
推到 Facebook!

form問題

尚未結案
xw
一般會員


發表:21
回覆:7
積分:5
註冊:2004-01-30

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-02-06 23:32:40 IP:202.175.xxx.xxx 未訂閱
請問有沒有方法改變張的形狀 例如﹕將form本身是正正方方的改變成圓角 或其他形狀
qoo1234
版主


發表:256
回覆:1167
積分:659
註冊:2003-02-24

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-02-07 01:02:45 IP:218.163.xxx.xxx 未訂閱
//Form 變成圓角    procedure TForm1.FormCreate(Sender: TObject);
var
    rgn1,rgn2, rgnw:HRGN;
begin
  rgn1:=CreateEllipticRgn(10,10,100,50);
  rgn2:=CreateRoundRectRgn(100,10,190,90,5,7);
  CombineRgn(rgnw,rgn1,rgn2,RGN_OR);
  SetWindowRgn(form1.handle,rgnw,true);
end;
 
網海無涯,學無止境!
leo2568
中階會員


發表:54
回覆:124
積分:70
註冊:2003-09-21

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-02-07 09:18:22 IP:61.217.xxx.xxx 未訂閱
引言: 請問有沒有方法改變張的形狀 例如﹕將form本身是正正方方的改變成圓角 或其他形狀
var
  Form1: TForm1;
  const c=520;    implementation    {$R *.dfm}    procedure TForm1.FormCreate(Sender: TObject);
  var Points: array [0..7] of TPoint;
        h, w: Integer;
  begin
    h := Form1.Height;
    w := Form1.Width;
    Points[0].X := C; Points[0].Y := 0;
    Points[1].X := 0; Points[1].Y := C;
    Points[2].X := 0; Points[2].Y := h - c;
    Points[3].X := C; Points[3].Y := h;        Points[4].X := w - c; Points[4].Y := h;
    Points[5].X := w; Points[5].Y := h - c;        Points[6].X := w; Points[6].Y := C;
    Points[7].X := w - C; Points[7].Y := 0;        SetWindowRgn(Form1.Handle, CreatePolygonRgn(Points, 8, WINDING), True);    end;    
leo2568
中階會員


發表:54
回覆:124
積分:70
註冊:2003-09-21

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-02-07 09:24:24 IP:61.217.xxx.xxx 未訂閱
procedure TForm1.FormCreate(Sender: TObject);
  var rgn: HRGN;
begin
  Form1.Borderstyle := bsNone;
  rgn := CreateRoundRectRgn(0,// x-coordinate of the region's upper-left corner
    0, // y-coordinate of the region's upper-left corner
  ClientWidth, // x-coordinate of the region's lower-right corner
  ClientHeight, // y-coordinate of the region's lower-right corner
    650, // height of ellipse for rounded corners
    650); // width of ellipse for rounded corners
  SetWindowRgn(Handle, rgn, True);
end;
deity
尊榮會員


發表:90
回覆:876
積分:678
註冊:2003-05-09

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-02-09 19:10:45 IP:218.15.xxx.xxx 未訂閱
我也来插一个花,不过不能使窗体的下方变成圆角,不过凑凑也可以 procedure TForm1.FormCreate(Sender: TObject); var rgn:HRGN; begin BeginPath(Canvas.Handle); // 开始绘画路径,在指定的Canvas SetBkMode( Canvas.Handle, TRANSPARENT ); // 设置背景为透明 Canvas.RoundRect(10,10,500,500,60,60); // 画圆角矩型 EndPath(Canvas.Handle); // 结束绘画路径 rgn:= PathToRegion(Canvas.Handle); // 将路径加入区域 SetWindowRgn( Handle, rgn,true ); // 设置视窗范围 end; ——行径窄处,留一步与人行——
Ktop_Robot
站務副站長


發表:0
回覆:3511
積分:0
註冊:2007-04-17

發送簡訊給我
#6 引用回覆 回覆 發表時間:2007-04-26 13:52:08 IP:000.000.xxx.xxx 未訂閱
提問者您好:


以上回應是否已得到滿意的答覆?


若已得到滿意的答覆,請在一週內結案,否則請在一週內回覆還有什麼未盡事宜,不然,
將由版主(尚無版主之區域將由副站長或站長)自由心證,選擇較合適之解答予以結案處理,
被選上之答題者同樣會有加分獎勵同時發問者將受到扣 1 分的處分。不便之處,請見諒。


有問有答有結案,才能有良性的互動,良好的討論環境需要大家共同維護,感謝您的配合。

------
我是機器人,我不接受簡訊.
系統時間:2024-04-27 23:04:20
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!