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

如何自建一個目錄並存放圖檔?

答題得分者是:hagar
huangeider
高階會員


發表:288
回覆:492
積分:231
註冊:2003-02-26

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-10-11 11:40:41 IP:210.201.xxx.xxx 未訂閱
請教 1按一button後建立一個001的目錄 2用openpicturedialog開啟一個圖檔按button後如何把圖檔複製到001目錄下 感謝 「堅持」從洗馬桶做起 Aric
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-10-11 12:19:44 IP:202.39.xxx.xxx 未訂閱
1.
uses FileCtrl;    procedure TForm1.Button1Click(Sender: TObject);
begin
  if not DirectoryExists('c:\001') then
    if not CreateDir('C:\001') then
    raise Exception.Create('Cannot create c:\001');
end;
2.
uses ShellApi;    procedure TForm1.Button1Click(Sender: TObject);
var
  FOS :TSHFileOpStruct;
begin
  if OpenDialog1.Execute then begin
    with FOS do begin
      Wnd := Self.Handle;
      wFunc := FO_COPY;
      pFrom := PChar(OpenDialog1.FileName);
      pTo := 'c:\001';
      fFlags := FOF_NoConfirmMkDir;
    end;
    SHFileOperation(FOS);
  end;
end;
--- 歡迎光臨 KTop 研究院 發表人 -
huangeider
高階會員


發表:288
回覆:492
積分:231
註冊:2003-02-26

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-10-11 12:45:02 IP:61.231.xxx.xxx 未訂閱
引言: 感謝大大的回答 但以下紅色的部分help中找不到能否說明 1.
uses FileCtrl;    procedure TForm1.Button1Click(Sender: TObject);
begin
  if not DirectoryExists('c:\001') then  
    if not CreateDir('C:\001') then
    raise Exception.Create('Cannot create c:\001');
end;
2.
uses ShellApi;    procedure TForm1.Button1Click(Sender: TObject);
var
  FOS :TSHFileOpStruct; //tshfileopstruct
begin
  if OpenDialog1.Execute then begin
    with FOS do begin
//以下wnd,wfunc,pfrom,pto,fflags是TSHFileOpStruct的參數嗎?可否說明一下意義?
      Wnd := Self.Handle; 
      wFunc := FO_COPY;
      pFrom := PChar(OpenDialog1.FileName);
      pTo := 'c:\001';
      fFlags := FOF_NoConfirmMkDir;
    end;
    SHFileOperation(FOS);//shfileoperation
  end;
end;
--- 歡迎光臨 KTop 研究院 發表人 - >< face="Verdana, Arial, Helvetica"> 「堅持」從洗馬桶做起 Aric 發表人 - huangeider 於 2003/10/11 12:53:34
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-10-11 13:00:23 IP:202.39.xxx.xxx 未訂閱
Delphi IDE 選單 Help -> Windows SDK 在 "索引" 輸入 SHFileOperation 就可以看到詳細的答案了.    --- 歡迎光臨 KTop 研究院
huangeider
高階會員


發表:288
回覆:492
積分:231
註冊:2003-02-26

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-10-11 13:08:38 IP:61.231.xxx.xxx 未訂閱
引言: 小弟已找到不過有個問題 sdk中文是什麼意思? Delphi IDE 選單 Help -> Windows SDK 在 "索引" 輸入 SHFileOperation 就可以看到詳細的答案了. --- 歡迎光臨 KTop 研究院 < face="Verdana, Arial, Helvetica"> 「堅持」從洗馬桶做起 Aric
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-10-11 13:14:53 IP:202.39.xxx.xxx 未訂閱
這有一段可以參考: http://iroi.seu.edu.cn/books/ee_dic/whatis/sdk.htm [剪貼如下]: An SDK (software developer's kit) is a set of programs used  by a computer programmer to write application programs.  Typically, an SDK includes a visual screen builder, an editor,  a compiler, a linker, and sometimes other facilities. The term  is used by Microsoft, Sun Microsystems, and a number of other  companies.    --- 歡迎光臨 KTop 研究院
huangeider
高階會員


發表:288
回覆:492
積分:231
註冊:2003-02-26

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-10-11 13:39:25 IP:61.231.xxx.xxx 未訂閱
引言: createdir只能在根目錄下建目錄嗎? 能在一個如c:\direct底下建立001目錄嗎?
「堅持」從洗馬桶做起 Aric
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#8 引用回覆 回覆 發表時間:2003-10-11 14:06:07 IP:202.39.xxx.xxx 未訂閱
一次要建立多層目錄, 請用 ForceDirectories 這個 function, ex:
uses FileCtrl;    procedure TForm1.Button1Click(Sender: TObject);
var 
  sDir: string;
begin
  sDir := 'C:\Direct\001';
  if not DirectoryExists(sDir) then
    if not ForceDirectories(sDir) then
      ShowMessage('無法建立 '   sDir   ' 目錄');
end;
--- 歡迎光臨 KTop 研究院 發表人 -
huangeider
高階會員


發表:288
回覆:492
積分:231
註冊:2003-02-26

發送簡訊給我
#9 引用回覆 回覆 發表時間:2003-10-11 14:14:32 IP:61.231.xxx.xxx 未訂閱
引言: 感謝 用一個tedit 給予一個變數 如何用 createdir()把tedit內的變數建成目錄? 這個問題是''符號的問題 如 createdir(tedit.text)可以執行但無法建立目錄?
「堅持」從洗馬桶做起 Aric
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#10 引用回覆 回覆 發表時間:2003-10-11 14:41:22 IP:202.39.xxx.xxx 未訂閱
小弟試了一下, 即使 Edit1.Text 內有單引號 仍是可以建立該目錄.    --- 歡迎光臨 KTop 研究院
huangeider
高階會員


發表:288
回覆:492
積分:231
註冊:2003-02-26

發送簡訊給我
#11 引用回覆 回覆 發表時間:2003-10-11 14:52:43 IP:61.231.xxx.xxx 未訂閱
引言: 小弟試了一下, 即使 Edit1.Text 內有單引號 仍是可以建立該目錄. 因為是使用者在tedit內設的變數,不能直接有單引號,必須人工加上單引號, --- 歡迎光臨 > < face="Verdana, Arial, Helvetica"> 「堅持」從洗馬桶做起 Aric
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#12 引用回覆 回覆 發表時間:2003-10-11 15:02:39 IP:202.39.xxx.xxx 未訂閱
CreateDir(Edit1.Text) 不就好了嗎? 為什麼要人工加上單引號?    --- 歡迎光臨 KTop 研究院
huangeider
高階會員


發表:288
回覆:492
積分:231
註冊:2003-02-26

發送簡訊給我
#13 引用回覆 回覆 發表時間:2003-10-11 15:13:39 IP:61.231.xxx.xxx 未訂閱
引言: CreateDir(Edit1.Text) 不就好了嗎? 為什麼要人工加上單引號? edit1.text:=direct; CreateDir(Edit1.Text); 這樣可以執行但沒辦法建立direct 小弟是認為是''的符號的問題 --- 歡迎光臨 KTop 研究院 < face="Verdana, Arial, Helvetica"> 「堅持」從洗馬桶做起 Aric
huangeider
高階會員


發表:288
回覆:492
積分:231
註冊:2003-02-26

發送簡訊給我
#14 引用回覆 回覆 發表時間:2003-10-11 15:29:58 IP:61.231.xxx.xxx 未訂閱
引言:
引言: CreateDir(Edit1.Text) 不就好了嗎? 為什麼要人工加上單引號? edit1.text:=direct; CreateDir(Edit1.Text); 這樣可以執行但沒辦法建立direct 小弟是認為是''的符號的問題 我又試了一下重建了一個新的目錄然後試了一下可以建目錄 怪了 在原來的目錄不行->是> --- 歡迎光臨 > < face="Verdana, Arial, Helvetica"> 「堅持」從洗馬桶做起 Aric
「堅持」從洗馬桶做起 Aric
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#15 引用回覆 回覆 發表時間:2003-10-11 15:30:20 IP:202.39.xxx.xxx 未訂閱
direct 這個變數的值為何? 還是指 Edit1.Text := 'direct' ? 另外, 回文的時候不要回在前者的引言裏面 不好閱讀.  --- 歡迎光臨 >
huangeider
高階會員


發表:288
回覆:492
積分:231
註冊:2003-02-26

發送簡訊給我
#16 引用回覆 回覆 發表時間:2003-10-11 15:32:31 IP:61.231.xxx.xxx 未訂閱
引言: 這個問題已有滿意的答案
「堅持」從洗馬桶做起 Aric
系統時間:2024-05-01 19:36:57
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!