全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1144
推到 Plurk!
推到 Facebook!

paintbox 问题

尚未結案
shihuashi
一般會員


發表:4
回覆:4
積分:1
註冊:2004-06-03

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-06-17 11:33:59 IP:220.196.xxx.xxx 未訂閱
我将在TAdvStringGrid 中画的一些内容转到paintbox中显示,由于内容太多,在TAdvStringGrid 中可通过scrollbar滚动浏览,但在paintbox只能显示一部分,好像paintbox中没有scrollbar的功能,不知怎么解决?谢谢各位了!
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-06-17 12:02:10 IP:202.39.xxx.xxx 未訂閱
試試把 TPaintBox 放在 TScrollBox 裏面 這樣只要 TPaintBox 的 Height/Width 超過 TScrollBox 的 Height/Width 那 TScrollBox 的 Scrollbar 會自動出現
shihuashi
一般會員


發表:4
回覆:4
積分:1
註冊:2004-06-03

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-06-21 14:29:36 IP:220.196.xxx.xxx 未訂閱
加了TScrollBox还是不行。
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-06-21 14:39:35 IP:202.39.xxx.xxx 未訂閱
小弟想您得在 TAdvStringGrid 的 OnTopLeftChanged 事件中 將 Grid 的內容畫在 TPaintBox 上
shihuashi
一般會員


發表:4
回覆:4
積分:1
註冊:2004-06-03

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-06-22 09:24:09 IP:220.196.xxx.xxx 未訂閱
unit PlanPreview; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, AdvGrid,Printers, Grids, Jpeg,BaseGrid, SnPanel, SnButton; type TPagePreview = class(TForm) SnPanel1: TSnPanel; SnPanel2: TSnPanel; SnButton1: TSnButton; PaintBox1: TPaintBox; PrinterSetupDialog1: TPrinterSetupDialog; SnButton2: TSnButton; SnButton3: TSnButton; ScrollBox1: TScrollBox; procedure PaintBox1Paint(Sender: TObject); procedure SnButton1Click(Sender: TObject); private asg:TAdvStringGrid; { Private declarations } public constructor Create(AOwner:TComponent; AStringGrid:TAdvStringGrid); { Public declarations } end; var PagePreview: TPagePreview; implementation {$R *.dfm} //asg是传递过来的参数 constructor TPagePreview.Create(AOwner:TComponent; AStringGrid,:TAdvStringGrid); begin inherited Create(AOwner); asg := AStringGrid; end; procedure TPagePreview.PaintBox1Paint(Sender: TObject); begin asg.PrintPreview(PaintBox1.Canvas,PaintBox1.ClientRect); end; //打印的代码 procedure TPagePreview.SnButton1Click(Sender: TObject); var r:trect; quarterpage:trect; begin printersetupdialog1.execute; with Printer do begin BeginDoc; r:=canvas.cliprect; quarterpage:=rect(0,0,(r.right-r.left) shr 1,(r.bottom-r.top) shr 1); setmapmode(canvas.handle,mm_lometric); dptolp(canvas.handle,r,2); asg.PrintDraw(canvas,quarterpage); EndDoc; end; end; end. 这是我的源码,我做的一个TAdvStringGrid通用的打印窗口
系統時間:2024-06-28 22:53:25
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!