如何寫判斷式 |
尚未結案
|
superyoung
一般會員 發表:14 回覆:24 積分:7 註冊:2004-07-02 發送簡訊給我 |
我現在使用2個Edit,1個RadioGroup,OpenDialog
現在有2個變數x,y分別要顯示在Edit1和Edit2
可是輸入變數x,y的值有2個方式:
1.直接輸入法,即直接給定值x=1,y=2
2.讀入txt檔後,資料為3,4(分別在第一行及第二行)即x=3,y=4
我想要在RadioGroup裡寫輸入變數的方法
當我在選擇RadioGroup的item時要先判斷是以上述那一種方式輸入變數
請問要怎樣寫判斷式呢??
ps:當我讀txt檔時要用那一個元件比較好
麻煩各位高手前輩了
謝謝
|
bass15
高階會員 發表:24 回覆:171 積分:119 註冊:2003-10-27 發送簡訊給我 |
void __fastcall TForm1::Button1Click(TObject *Sender) { TStringList *slFile; if(RadioGroup1->ItemIndex==0){ Edit1->Text="1"; Edit2->Text="2"; }else{ if(OpenDialog1->Execute()){ slFile = new TStringList; slFile->LoadFromFile(OpenDialog1->FileName); Edit1->Text= slFile->Strings[0]; Edit2->Text= slFile->Strings[1]; delete slFile; } } }用RadioGroup1->ItemIndex來判斷他是選第幾個item (0表示第一個) 用StringList來讀檔 相關StringList的討論狠多 可以搜尋看看 發表人 - bass15 於 2004/08/13 01:00:07 |
superyoung
一般會員 發表:14 回覆:24 積分:7 註冊:2004-07-02 發送簡訊給我 |
|
bass15
高階會員 發表:24 回覆:171 積分:119 註冊:2003-10-27 發送簡訊給我 |
不太懂你的意思..什麼叫顯示Edit1???
void __fastcall TForm1::GroupBox1Click(TObject *Sender) { if(RadioGroup1->ItemIndex==0) ShowMessage(Edit1->Text.c_str()); else if(RadioGroup1->ItemIndex==1) ShowMessage(Edit2->Text.c_str()); }發表人 - bass15 於 2004/08/13 10:56:35 |
superyoung
一般會員 發表:14 回覆:24 積分:7 註冊:2004-07-02 發送簡訊給我 |
|
nlj859
資深會員 發表:139 回覆:375 積分:322 註冊:2004-03-20 發送簡訊給我 |
Hello superyoung, 我一開始在讀.txt檔之前先預設是Item1.
程式如下:
void __fastcall TForm1::Button1Click(TObject *Sender) { TStringList *slFile; if(OpenDialog1->Execute()) { slFile = new TStringList; slFile->LoadFromFile(OpenDialog1->FileName); if(RadioGroup1->ItemIndex==0) Edit1->Text= slFile->Strings[0]; else Edit2->Text= slFile->Strings[1]; delete slFile; } } void __fastcall TForm1::FormCreate(TObject *Sender) { RadioGroup1->ItemIndex=0; }請參考看看. |
bass15
高階會員 發表:24 回覆:171 積分:119 註冊:2003-10-27 發送簡訊給我 |
其實第一個回應已經很清楚了吧...
我在改一下看你了不了解..
假設ItemIndex==0表示不讀檔,是讓使用者從Edit輸入x,y
ItemIndex==1表示你要從檔案讀出x,y
void __fastcall TForm1::Button1Click(TObject *Sender) { int x=0; int y=0; TStringList *slFile; if(RadioGroup1->ItemIndex==0){ //這裡表示不讀檔, 從Edit裡面讀出x,y x=Edit1->Text.ToIntDef(0); //把Edit1裡面的值放到x裡面 y=Edit2->Text.ToIntDef(0); //把Edit2裡面的值放到y裡面 }else{ //這裡表示要讀檔, 從檔案裡面讀出x,y if(OpenDialog1->Execute()){ slFile = new TStringList; slFile->LoadFromFile(OpenDialog1->FileName); Edit1->Text= slFile->Strings[0]; //把第一行讀出來放到Edit1 x=Edit1->Text.ToIntDef(0); //把讀出的值放到x裡面 Edit2->Text= slFile->Strings[1]; //把第二行讀出來放到Edit2 y=Edit2->Text.ToIntDef(0); //把讀出的值放到y裡面 delete slFile; } } ShowMessage(x); //秀x值給你看 ShowMessage(y); //秀y值給你看 } |
superyoung
一般會員 發表:14 回覆:24 積分:7 註冊:2004-07-02 發送簡訊給我 |
|
nlj859
資深會員 發表:139 回覆:375 積分:322 註冊:2004-03-20 發送簡訊給我 |
引言: 我現在要用Button來讀取txt檔 那我要怎樣寫判斷式來判斷 1.我是按下Button來讀取txt檔 2.直接輸入法 又要麻煩各位了...謝謝Hello superyoung, 上面的範例不是一直都是用Button褡配OpenDialog來開啟檔案嗎? void __fastcall TForm1::Button3Click(TObject *Sender) //==>這裡就是以Button來讀取txt檔 { TStringList *slFile; if(OpenDialog1->Execute()) { slFile = new TStringList; slFile->LoadFromFile(OpenDialog1->FileName); if(RadioGroup1->ItemIndex==0) Edit1->Text= slFile->Strings[0]; else Edit2->Text= slFile->Strings[1]; delete slFile; } }不曉得你的意思是什麼,可否再詳細描述一下? |
superyoung
一般會員 發表:14 回覆:24 積分:7 註冊:2004-07-02 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |