Re: [問題]WIN32應用程式如何讓PICTUREBOX載入資源 …

看板C_Sharp作者 (東大廢柴協會會長)時間16年前 (2008/05/21 18:05), 編輯推噓1(101)
留言2則, 1人參與, 最新討論串2/2 (看更多)
※ 引述《hamsters (hamster)》之銘言: : 假設專案預設命名空間叫 A,ImageFile.jpg 放在專案的 B 資料夾中,編譯後這個影像 : 資源名稱會是 A.B.ImageFile.jpg,當然前提是該影像已經設定為內嵌資源。 : 影像放在 .resx 檔的話 Visual Studio 預設會幫你產生一個名稱相同的類別 (例如資源 : 檔是 Resources.resx,Visual Studio 會自動產生一個名稱為 Resource 的靜態類別, : 不過要使用 Visual Sudio 建立這個資源檔才行),而該類別中會有一個屬性供你讀取影 : 像 (拿剛剛的 Resouece 當範例,Resource.ImageFile 屬性就會傳回這張影像)。 真的是十分感謝您,在下成功將內嵌檔案載入圖片盒了 不過使用.resx的時候出了點問題 Assembly assemb Stream _imageStream; assembly1 = Assembly.GetExecutingAssembly(); _imageStream = assembly1.GetManifestResourceStream("Test.Resources.ImageFile.jpg"); 上面那行程式碼把我放在Resources資料夾裡面的檔案成功放入_imageStream this.pictureBox1.Image = Image.FromStream(_imageStream); 以上程式碼放在Button1.click事件裡 下面程式碼出現之前的問題,沒辦法放入Stream Assembly assembly2; Stream _imageStream1; assembly2 = Assembly.GetExecutingAssembly(); _imageStream1 = assembly2.GetManifestResourceStream("Test.RES.mm.jpg"); this.pictureBox1.Image = Image.FromStream(_imageStream1); 我是在一個名稱為RES的資源檔(.resx)中放入一個名稱為mm.jpg的影像 出現了Image.FromStream(_imageStream1)參數為NULL的問題 是否我在GetManifestResourceStream裡面的參數放置錯誤了呢? 我試過裡面用RES.mm.jpg以及Test.mm.jpg都抓不到檔案 標頭檔 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.IO; using System.Drawing.Imaging; using System.Reflection; using System.Resources; 謝謝大大的解答了~"~|| 是在哪裡出錯了呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.118.235.116

05/22 10:42, , 1F
你找找專案中應該有一個 RES 類別
05/22 10:42, 1F

05/22 10:42, , 2F
this.pictureBox1.Image = RES.mm;
05/22 10:42, 2F
文章代碼(AID): #18C_FNzA (C_Sharp)
文章代碼(AID): #18C_FNzA (C_Sharp)