如何將TBitBtn,TEdit,TShape元件畫在TImage上列印出來 |
尚未結案
|
markov
中階會員 ![]() ![]() ![]() 發表:55 回覆:135 積分:53 註冊:2003-12-01 發送簡訊給我 |
|
taishyang
站務副站長 ![]() ![]() ![]() ![]() ![]() ![]() 發表:377 回覆:5490 積分:4563 註冊:2002-10-08 發送簡訊給我 |
markov您好:
若元件有handle可用下面方式達到您的目的
Graphics::TBitmap*BMP=new Graphics::TBitmap(); TCanvas *MyCanvas= new TCanvas;; TRect rect = BitBtn1->ClientRect; HDC dc = GetDC(BitBtn1->Handle); MyCanvas->Handle = dc; BMP->Width = rect.Right - rect.Left; BMP->Height = rect.Bottom - rect.Top; BMP->Canvas->CopyRect(rect,MyCanvas,rect); Image1->Picture->Assign(BMP); delete MyCanvas; delete BMP;Tshape您可以使其Parent為Panel(有handle),迂迴的方式達到您的目的 順心 |
markov
中階會員 ![]() ![]() ![]() 發表:55 回覆:135 積分:53 註冊:2003-12-01 發送簡訊給我 |
|
markov
中階會員 ![]() ![]() ![]() 發表:55 回覆:135 積分:53 註冊:2003-12-01 發送簡訊給我 |
雖然已經結案了
但是我在試TShape時發現不會動作,是不是我那裡寫錯了!
還請各位大大指教!
TShape *shape=new TShape(Panel1); shape->Parent=Panel1; shape->Brush->Color=clGreen; shape->Shape=stCircle; Graphics::TBitmap*BMP=new Graphics::TBitmap(); TCanvas *MyCanvas= new TCanvas;; TRect rect = shape->ClientRect; HDC dc = GetDC(shape->Parent->Handle); MyCanvas->Handle = dc; BMP->Width = rect.Right - rect.Left; BMP->Height = rect.Bottom - rect.Top; BMP->Canvas->CopyRect(rect,MyCanvas,rect); Image1->Picture->Assign(BMP); delete MyCanvas; delete BMP; delete shape; |
taishyang
站務副站長 ![]() ![]() ![]() ![]() ![]() ![]() 發表:377 回覆:5490 積分:4563 註冊:2002-10-08 發送簡訊給我 |
markov您好:
試試下面的code
TShape *shape=new TShape(Panel1); shape->Parent=Panel1; shape->Brush->Color=clGreen; shape->Shape=stCircle; Application->ProcessMessages(); Graphics::TBitmap*BMP=new Graphics::TBitmap(); TCanvas *MyCanvas= new TCanvas;; TRect rect = shape->ClientRect; HDC dc = GetDC(shape->Parent->Handle); MyCanvas->Handle = dc; BMP->Width = rect.Right - rect.Left; BMP->Height = rect.Bottom - rect.Top; BMP->Canvas->CopyRect(rect,MyCanvas,rect); Image1->Picture->Assign(BMP); delete MyCanvas; delete BMP; delete shape;順心 |
markov
中階會員 ![]() ![]() ![]() 發表:55 回覆:135 積分:53 註冊:2003-12-01 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |