全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2044
推到 Plurk!
推到 Facebook!

LoadFromFile讀檔問題

尚未結案
Allanx
一般會員


發表:13
回覆:20
積分:6
註冊:2003-10-06

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-05-18 23:28:00 IP:211.76.xxx.xxx 未訂閱
請問各位高手: 我有1-1.BMP,1-2.BMP,.....1-10.BMP十個圖檔 然後我需要將他們一一讀進來,想說用for回圈如下 for(int i=1;i<=10;i ) Image1->Picture->LoadFormFile(??); 如果能用這樣的方式code的話...問號裡面要如何code呢?? 還有就是... 用LoadFromFile的話,圖檔擺放的位置一定要在Borland的peojects裡嘛? 如果圖檔(1-1.BMP)放在C:\中,我code Image1->Picture->LoadFormFile("C:\1-1.BMP)卻是有錯的.... 感激不盡..........
yachanga
資深會員


發表:24
回覆:335
積分:296
註冊:2003-09-27

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-05-19 00:01:36 IP:61.230.xxx.xxx 未訂閱
Hi Allanx您好: 小弟想到兩種方式: 1.檔名如果有規則 for(int i=1;i<=10;i++) Image1->Picture->LoadFormFile("C:\1-"+inttostr(i)+".bmp");     2. 檔案名稱不固定, 但是都放在同一目錄下D:\Photo 我這邊提供Delphi範例, 您可以自行轉換BCB, 可參考包子板大的程式 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=44946
procedure TForm1.Button1Click(Sender: TObject);
var
FileRec:TSearchrec;
Sour: String;
begin
  Sour:='D:\photo\';
  if FindFirst(Sour '*.jpg',faAnyfile,FileRec) = 0 then
    repeat
       begin
        Image1.Picture.LoadFromFile(Sour FileRec.Name);      
       end;
    until FindNext(FileRec)<>0;      FindClose(FileRec);    end;
發表人 - yachanga 於 2004/05/19 00:07:07
Allanx
一般會員


發表:13
回覆:20
積分:6
註冊:2003-10-06

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-05-19 11:25:57 IP:211.76.xxx.xxx 未訂閱
yachanga 您好: 讀檔問題我已經解決ㄌ...感謝... 不過讀檔入徑問題..因為我不懂delphi轉BCB所以希望您能再指導一下... 我敘述完整一點.. 假設我的程式放在newproject的檔案夾裡... 裡面還有個image的檔案夾都是放圖檔用的.. 也就是說我想LoadFromFile的入徑是newproject\image\.. 如何設定呢?? 還有newproject這個檔案夾是並非固定在同一個位置的.. 感激不盡.....
JerryKuo
版主


發表:42
回覆:571
積分:322
註冊:2003-03-10

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-05-19 13:48:15 IP:61.230.xxx.xxx 未訂閱
yachanga
資深會員


發表:24
回覆:335
積分:296
註冊:2003-09-27

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-05-19 23:46:59 IP:61.230.xxx.xxx 未訂閱
引言: yachanga 您好: 讀檔問題我已經解決ㄌ...感謝... 不過讀檔入徑問題..因為我不懂delphi轉BCB所以希望您能再指導一下... 我敘述完整一點.. 假設我的程式放在newproject的檔案夾裡... 裡面還有個image的檔案夾都是放圖檔用的.. 也就是說我想LoadFromFile的入徑是newproject\image\.. 如何設定呢?? 還有newproject這個檔案夾是並非固定在同一個位置的.. 感激不盡.....
Hi Allanx: 您提到目錄並非固定, 可以將程式寫成function, 將目錄當作參數使用... 小弟實在不懂BCB啦..以下範例為想像的空間 若有謬誤請多包含囉 < class="code"> void __fastcall TForm1::OpenImageFiles(AnsiString szDir) { TSearchRec SearchRec; int iAttr=faAnyFile; int iFound=0; if(!DirectoryExists(szDir)) { return; } if(szDir.SubString(szDir.Length(), 1)!="\\") { szDir=szDir "\\"; } iFound=FindFirst(szDir "*.jpg", iAttr, SearchRec); while(iFound==0) { Image1->Picture->LoadFromFile(szDir SearchRec.Name); iFound=FindNext(SearchRec); } FindClose(SearchRec); } 發表人 - yachanga 於 2004/05/19 23:48:59
Allanx
一般會員


發表:13
回覆:20
積分:6
註冊:2003-10-06

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-05-20 22:35:06 IP:140.124.xxx.xxx 未訂閱
yachanga您好:    感謝您熱心ㄉ回覆,不過小弟實在是太菜ㄌ,您上面poㄉcode中大部分函式我都沒看過,也不知道它們ㄉ意義是如何??可以解釋一下嘛!!                                        好頭痛阿!!
yachanga
資深會員


發表:24
回覆:335
積分:296
註冊:2003-09-27

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-05-20 23:57:25 IP:61.230.xxx.xxx 未訂閱
引言: yachanga您好: 感謝您熱心ㄉ回覆,不過小弟實在是太菜ㄌ,您上面poㄉcode中大部分函式我都沒看過,也不知道它們ㄉ意義是如何??可以解釋一下嘛!! 好頭痛阿!! < face="Verdana, Arial, Helvetica"> Hi Allanx兄: 快別這樣說, 等您逐漸進入程式殿堂後,您會發現美好的一面 class="code"> void __fastcall TForm1::OpenImageFiles(AnsiString szDir) { TSearchRec SearchRec; int iAttr=faAnyFile; int iFound=0; if(!DirectoryExists(szDir)) //假如找不到此目錄就離開 { return; } //若給的目錄最後一個字元不是"\", 就補上 if(szDir.SubString(szDir.Length(), 1)!="\\") { szDir=szDir "\\"; } //FindFirst 是抓取此目錄第一個檔案,抓到就回傳0. 參數列(檔案路徑,屬性有下列七種,檔案資訊格式) faReadOnl Read-only files faHidden Hidden files faSysFile System files faVolumeID $00000008 Volume ID files faDirectory $00000010 Directory files faArchive Archive files faAnyFile Any file iFound=FindFirst(szDir "*.jpg", iAttr, SearchRec); while(iFound==0) { //如果抓到此檔案則顯示此圖片 Image1->Picture->LoadFromFile(szDir SearchRec.Name); //找此目錄下一筆檔案 iFound=FindNext(SearchRec); } //關閉檔案 FindClose(SearchRec); } ~悠遊法國號~ 發表人 - taishyang 於 2004/05/21 00:22:21
系統時間:2024-05-19 8:07:29
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!