[英]how do I load an image in a picture box of another form using open file dialog
[英]how to change the background image of a form using open file dialog on another form
我有一個查詢。 我有一個初始表單,它是項目的第一個表單,我想在關閉表單后更改該表單的背景圖像。 例如,我的軟件在啟動表單后啟動,在設置中,我具有更改啟動表單的背景圖像的功能。 關閉表單后可以更改背景圖像嗎? (因為當用戶輸入設置表單時,我的啟動表單已關閉)。
我已經編寫了此代碼表單來更改背景圖像,但是我不知道如何在啟動表單打開時更改表單圖像,它應該從打開文件對話框中打開更改圖像。
我的代碼是:
var FD = new System.Windows.Forms.OpenFileDialog();
FD.Filter = "jpeg files|*.jpg";
if (FD.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
string fileToOpen = FD.FileName;
System.IO.FileInfo File = new System.IO.FileInfo(FD.FileName);
BackgroundImage = Image.FromFile(FD.FileName);
}
您可以從某個位置加載啟動圖像,因此只需用OpenFileDialog用用戶選擇的圖像替換該圖像,然后在下次顯示啟動圖像時加載新圖像。
編輯:進一步的解釋
解決方案的一個例子。 將圖像存儲在與應用程序相同的文件夾中(例如:“ splash.png”),然后您可以在例如Splash Form Load事件中加載圖像。 現在,當用戶要使用打開的文件對話框替換設置中的圖像時,只需要將選擇的文件復制到應用程序的文件夾中(Application.StartupPath應該可以找到應用程序文件夾的路徑)並覆蓋舊的啟動名。 png(也許您可以在覆蓋之前重命名舊的東西),然后在下次加載應用程序時,即為Splash表單加載的圖像。
這是一個簡單的解決方案,可以改進,但是首先嘗試它應可產生所需的結果。
確定嘗試以下
您已經為初始屏幕設置了背景圖片
eg : it location was c:\sam.jpeg
現在在表單關閉事件上嘗試以下代碼
System.IO.File.Delete(@"C:\Sam.jpeg");
Image.FromFile(FD.FileName).Save(@"C:\Sam.jpeg", System.Drawing.Imaging.ImageFormat.Jpeg);
現在它刪除舊文件,並以舊名稱設置新圖像...
重新加載時會顯示新的背景圖片...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.