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

如何限定劃布的範圍?

尚未結案
brook
資深會員


發表:57
回覆:323
積分:371
註冊:2002-07-12

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-06-04 21:39:21 IP:218.160.xxx.xxx 未訂閱
我想在form上規劃一小區塊來劃線,如RECT(0,0,100,100)四方之內. 但當我下指令 Canvas->MoveTo(0,0); Canvas->LineTo(200,200); 線條會一直劃到POINT(200,200); 我該如何讓它只會劃到POINT(100,100), 超出RECT(0,0,100,100)以外不劃, 記得dos環境有setviewport可用, 但在windows環境卻不管用.我測過 SetViewportExtEx和SetWindowExtEx, 但未測出來,麻煩各位先進幫我測一下,謝謝.
jest0024
高階會員


發表:11
回覆:310
積分:224
註冊:2002-11-24

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-06-08 12:18:22 IP:203.67.xxx.xxx 未訂閱
引言: 我想在form上規劃一小區塊來劃線,如RECT(0,0,100,100)四方之內. 但當我下指令 Canvas->MoveTo(0,0); Canvas->LineTo(200,200); 線條會一直劃到POINT(200,200); 我該如何讓它只會劃到POINT(100,100), 超出RECT(0,0,100,100)以外不劃, 記得dos環境有setviewport可用, 但在windows環境卻不管用.我測過 SetViewportExtEx和SetWindowExtEx, 但未測出來,麻煩各位先進幫我測一下,謝謝.
SelectClipRgn ABCD分開看的懂,連起來像鬼劃符~~!!!
brook
資深會員


發表:57
回覆:323
積分:371
註冊:2002-07-12

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-06-08 13:00:30 IP:218.160.xxx.xxx 未訂閱
非常感謝jest0024大哥,己經ok.
 
    HRGN MyRgn;        MyRgn = ::CreateRectRgn(0,0,100,100);
    ::SelectClipRgn(Canvas->Handle,MyRgn);
    Canvas->MoveTo(0,0);
    Canvas->LineTo(250,250);        ::SelectClipRgn(Canvas->Handle,NULL);
    ::DeleteObject(MyRgn); 
系統時間:2024-05-02 9:58:31
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!