2013-01-23 45 views
0

上打開文件對話框形式的背景圖像我有一個查詢。我有一個飛濺形式,這是我的第一種形式的項目,我想在關閉後更改該形式的背景圖像。例如,我的軟件啓動後,飛濺形式和設置我有一個功能來更改飛濺形式的背景圖像。窗體關閉時可以更改背景圖像嗎? (因爲我的飛濺形式在用戶輸入設置表單時關閉)。如何改變使用另一種形式

我寫了這個代碼的形式更改背景圖片,但我不知道如何當飛濺的形式打開它應該打開從打開文件對話框改變圖像改變形式的圖像。

我的代碼是:

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); 
      } 

回答

1

好的嘗試下面

的你已經設置的背景圖像閃屏

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); 

現在它刪除舊下面的代碼文件,並設置在老字號的新形象......

在重裝的時候,我牛逼顯示新的背景圖片...

+0

先生,你沒有得到我的問題。正確閱讀。我說,如何改變一個窗體的圖像,這是從有顯示對話框選項 –

+0

是的現在我編輯我的帖子試試這個.... – Pandian

+0

先生我不知道如何設置從指定bachground圖像位置。 如何設置從文件夾中的背景圖像「resoucses,因爲我有資源文件夾中的所有圖像? 請如果你能幫助我 –

1

你從什麼地方加載開機畫面,這樣的話只需更換與一個通過與打開文件對話框的用戶選擇,然後該圖像的新圖像將被下一次加載顯示飛濺。


編輯:進一步解釋

一個解決方案的例子。將圖像存儲在與應用程序相同的文件夾中(例如:「splash.png」),然後可以在Splash Form Load事件中加載該圖像。現在,當用戶想要使用打開的文件對話框替換設置中的圖像時,您只需將選定的文件複製到應用程序的文件夾(Application.StartupPath應該爲您提供應用程序文件夾的路徑)並覆蓋舊的飛濺。 png(也許你可以在覆蓋之前重命名舊的),然後在下次應用程序加載時,這就是Splash窗體將加載的圖像。

這是一個簡單的解決方案,可以改進,但作爲第一次嘗試它應該產生你想要的結果。

+0

先生我的問題是Ø我不是從什麼地方我已經使用背景圖片選項來設置圖像加載飛濺形式圖像。那麼該怎麼辦? –

+0

那麼爲了獲得這種動態行爲,您必須更改該實現,以便可以從外部源更改它。如果它是靜態指定的,你將無法持久地改變它。 (我的意思是,要進行更改,以便在下次用戶啓動飛濺的形式將顯示新的圖像) – dutzu

+0

@shariq_khan我希望我理解你的權利,你有飛濺的形式,只顯示在應用程序的啓動,然後關閉並從應用程序設置中,您可以更改啓動窗體中顯示的圖像,以便應用程序下次啓動時,它將顯示另一個圖像。如果這是正確的,那麼您需要更改splash表單檢索用於背景的圖像的方式。例如,應用程序所在的文件夾中的文件就是一個例子,所以通過替換,您將顯示另一個圖像。 – dutzu