作者noodleT (麵T)
看板C_and_CPP
標題[問題] BCB TImage 儲存到哪裡去了?
時間Sun May 31 12:22:59 2015
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
BCB
問題(Question):
圖片:
http://i.imgur.com/gKx96R5.png
完整程式碼:
.H
http://ideone.com/ohYxrV
.CPP
http://ideone.com/5ozF3o
BCB 中新增 TImage 元件,然後在「屬性 -> Picture」中載入圖片,
即使圖片被移除了, BCB 也可以正確執行、顯示圖片。
在自己製作的元件 TestButton 中,我希望使用者在建立元件時,
就順便載入 123.jpg 這張圖。但當 123.jpg 被移除時,程式就會跳 Error。
下面是覺得有影響的程式碼。
//.H
class PACKAGE TTestButton : public TButton
{
private:
TImage *Image;
//略
}
//.CPP
__fastcall TTestButton::TTestButton(TComponent* Owner): TButton(Owner)
{
Image = new TImage(this);
Image->Parent = this;
//略
Image->Picture->LoadFromFile("C:\\TestButton\\123.jpg");
}
請問我該怎麼把圖片保存在內部?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.237.85.238
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1433046183.A.294.html
→ EdisonX: 先想一下是不是絕對必要塞到程式裡面去,因一般程式會再 05/31 12:57
→ EdisonX: 切一個資料夾放UI的東西, LoadFromFile 時就寫成 05/31 12:57
→ EdisonX: ExeFilePath + _T("\\Resource\\123.jpg") ; 如果不這麼 05/31 12:58
→ EdisonX: 做的話,我知道的方式事先用另一支程式把 123.jpg 內容全 05/31 12:58
→ EdisonX: dump 出來,放在 code 裡面 byte jpg[] = {....} ; 等到 05/31 12:59
→ EdisonX: 執行期時再把 jpg[] 從 mem 讀出或寫出到檔案都可, 只是 05/31 13:00
→ EdisonX: 這種方式佔用 stack 太大, 不是絕對必要我不會那麼做。 05/31 13:00
→ noodleT: 因為這隻程式是給別人用的元件,如果不包進來,那別人使 05/31 13:39
→ noodleT: 用這個元件,不就要再另外自備一個資料夾來存圖片? 05/31 13:39
→ EdisonX: 設計讓別人用的話通常路徑是開放讓人填的 05/31 14:07
→ TobyH4cker: 還有resource可以用啊 06/01 04:50