如何讓我的程序加載圖像並使其成爲窗體的背景? 我需要它的確切代碼。我瀏覽過所有的互聯網,我發現的唯一的東西是各種調整和修復,使背景在特殊情況下按預期工作。我也嘗試了一些德爾福的書,我找不到它。在Delphi中設置窗體的背景圖像
回答
將
TImage
放在您的表單上。確保它是後面窗體上的所有其他控件。您可以右鍵單擊它並選擇「發回」菜單選項。加載圖形。
var img: TBitmap; begin img := TBitmap.Create; try img.LoadFromFile('S:\background.bmp');
將其指定給圖像控件。
Image1.Picture := img;
清理。
finally img.Free; end; end;
您也可以結合過去的三個步驟來加載圖形,並把它的圖像控制的一次。感謝Jon的建議。
Image1.Picture.LoadFromFile('B:\background.bmp');
我很想解釋一下這個答案沒有用的反饋。我是否可以改正事實錯誤,還是從根本上來說是一個不可行的解決方案? –
爲什麼不直接通過TImage控件加載圖像?這樣你就可以使用任何加載到TPicture的圖像格式(jpg,gif等)。 –
因爲我不記得圖片屬性是否爲零,我不記得是否TPicture知道如何自己加載圖像。顯然,這也不是問題。感謝您的想法。 –
我會做的是使用表格OnPaint事件,讓畫布(Form1.Canvas),然後用Draw方法(這需要的圖像)繪製你想要的圖像。像下面這樣:
procedure TForm1.FormPaint(Sender: TObject);
var
mypic: TBitMap;
begin
mypic := TBitMap.Create;
try
mypic.LoadFromFile('cant.bmp');
Form1.Canvas.Draw(0, 0, mypic);
finally
FreeAndNil(mypic);
end;
end;
請注意,這可能是極其緩慢。
您提到它是一個筆記,但在繪畫事件中加載文件確實不是一個好主意。另外,你應該調用繼承的'Paint'實現。 – jpfollenius
是真的。最好是在oncreate或onshow上加載圖像,然後將其保存以供重新使用,以便在重新繪製時不總是重新加載。此外,應用程序的頻繁更新也會降低速度。 –
這是我所有的應用程序顯示錶單圖像的方式。我加載圖像在表單創建或當應用程序調用一個具體證明事件
var
vDest, vRect: TRect;
begin
vRect := Rect(0, 0, FBackgroundImage.Width, FBackgroundImage.Height);
vDest := Rect(0,0,Self.Width, Self.Height);
Canvas.StretchDraw(vDest, FBackgroundImage);
if FileExists(this) then
FBackgroundImage.LoadFromFile(this);
@Brendan
thanks
//from Brendan code;
var
vDest, vRect: TRect;
FBackgroundImage: TGraphic;
begin
FBackgroundImage := image1.Picture.Graphic; //LOAD from invisible image
vRect := Rect(0, 0, FBackgroundImage.Width, FBackgroundImage.Height);
vDest := Rect(0,0,Self.Width, Self.Height);
Canvas.StretchDraw(vDest, FBackgroundImage);
end;
- 1. 如何設置窗體背景圖像
- 2. 爲窗體移動設置窗體的背景圖像
- 3. 圖像作爲Delphi中的窗體的背景
- 4. 設置openGL窗口的背景圖像
- 5. 如何在Delphi XE中將背景圖像設置爲TListview?
- 6. 無法設置背景在Windows窗體
- 7. 如何添加背景圖像到Delphi窗體
- 8. 如何將.PNG圖像設置爲我的WPF窗體的TILED背景圖像?
- 9. 設置背景顏色和設置圖像在ImageButton背景 - Android
- 10. 在dll中設置默認的xaml窗口背景圖像
- 11. 當設置爲LWUIT窗體的背景圖像時,PNG圖像染色嚴重
- 12. 在UIViewController(MonoTouch)中設置背景圖像
- 13. 在SD卡中設置背景圖像
- 14. 在Java中設置背景圖像
- 15. 在swift中設置navigationBar背景圖像
- 16. 如何在Windows Mobile窗體中設置按鈕的背景圖像?
- 17. 設置JWindow背景圖像
- 18. 設置背景圖像alertdialog
- 19. angularjs設置背景圖像
- 20. 設置UIScrollView背景圖像
- 21. UITableViewCell背景圖像設置
- 22. 如何設置圖像加載後的身體背景圖像?
- 23. 如何在wpf中設置動態窗口背景圖像
- 24. Windows窗體,C#,背景圖像
- 25. 使用圖像作爲窗體背景?
- 26. 設置背景圖像在背景中褪色
- 27. 設置背景圖像後設置背景顏色
- 28. 如何爲Edit(Delphi)設置背景圖像
- 29. 如何在另一個背景圖像背後設置背景?
- 30. 使窗體半透明,以查看窗體的背景圖像
DUP問題http://stackoverflow.com/questions/525970/how-to-add -background-images-to-delphi-forms – BlackTigerX
不,老虎,它不是重複的。看看另外一個問題,你會發現提問者*已經有*背景圖像,並且真正在問如何解決一些美容問題,這就是該問題的答案。 –