[BCB] 關於Switch之運作問題 |
答題得分者是:Stallion
|
leon17
一般會員 發表:5 回覆:14 積分:3 註冊:2006-12-31 發送簡訊給我 |
不好意思阿
我本身的問題是這樣的
希望做完題目後~總分會加上評語
於是設計了七道題目~分配如下
題號 題數 配分
1 5 (5、4、3、2、1)
2 5 (5、4、3、2、1)
3 3 (5、3、1)
4 5 (5、4、3、2、1)
5 3 (5、3、1)
6 5 (5、4、3、2、1)
7 5 (5、4、3、2、1)
然後有五種類型的評語A、B、C、D、E
所以評分標準是↓
( 評語-分數 )
A-7
B-8~20
C-21
D-22~34
E-35
做了PageControl~ (7個問題表單 1個結果表單)
<程式碼如下>
-----------------------------------------------------
void __fastcall TTest_3::PageControl1Change(TObject *Sender)
{
if(PageControl1->ActivePageIndex==7)
{
int k0,k;
k0=
Edit1->Text.ToIntDef(0)
Edit2->Text.ToIntDef(0)
Edit3->Text.ToIntDef(0)
Edit4->Text.ToIntDef(0)
Edit5->Text.ToIntDef(0)
Edit6->Text.ToIntDef(0)
Edit7->Text.ToIntDef(0);
if(k0>=5 && k0<=35)
k=k0/7;
switch (k)
{
case 4:
Label1->Caption=IntToStr(k0);
Label4->Caption="E";
break;
case 3:
Label1->Caption=IntToStr(k0);
Label4->Caption="D";
break;
case 2:
Label1->Caption=IntToStr(k0);
Label4->Caption="C";
break;
case 1:
Label1->Caption=IntToStr(k0);
Label4->Caption="B";
break;
default:
Label1->Caption=IntToStr(k0);
Label4->Caption="A";
break;
}
}
}
-----------------------------------------------------
但這樣都無法顯示出正確的得分對應
.請問該怎麼修改呢?
謝謝
|
Stallion
版主 發表:52 回覆:1600 積分:1995 註冊:2004-09-15 發送簡訊給我 |
|
leon17
一般會員 發表:5 回覆:14 積分:3 註冊:2006-12-31 發送簡訊給我 |
http://fileho.com/download/4c6444517718/BCB1.rar.html
我放上來了 有疑問的表單名字為Test3 請各位前輩不吝指正~謝謝 PS:此外不知是否能解決TabSheet1的選項選擇後.....才能接續換到TabSheet2作答之問題 謝謝 ===================引 用 文 章=================== Upload your code if you want to, some nice guy will debug your code. |
Stallion
版主 發表:52 回覆:1600 積分:1995 註冊:2004-09-15 發送簡訊給我 |
1.把 test3 的 Form 在 Project->Options 從 Auto-Create Form 改成 Available Form 之後
//--------------------------------------------------------------------------- void __fastcall TName_2::Button3Click(TObject *Sender) { // Name_2->Hide(); { Test_3->ShowModal(); __finally Test_3->Free(); TRadioButton *aButton; switch (aButton->Tag) { case 1: Edit1->Text= 5;break; case 2: Edit1->Text= 4;break; case 3: Edit1->Text= 3;break; case 4: Edit1->Text= 2;break; case 5: Edit1->Text= 1;break; case 6: Edit2->Text= 5;break; case 7: Edit2->Text= 4;break; case 8: Edit2->Text= 3;break; case 9: Edit2->Text= 2;break; case 10: Edit2->Text= 1;break; case 11: Edit3->Text= 5;break; case 12: Edit3->Text= 3;break; case 13: Edit3->Text= 1;break; case 14: Edit4->Text= 5;break; case 15: Edit4->Text= 4;break; case 16: Edit4->Text= 3;break; case 17: Edit4->Text= 2;break; case 18: Edit4->Text= 1;break; case 19: Edit5->Text= 5;break; case 20: Edit5->Text= 3;break; case 21: Edit5->Text= 1;break; case 22: Edit6->Text= 5;break; case 23: Edit6->Text= 4;break; case 24: Edit6->Text= 3;break; case 25: Edit6->Text= 2;break; case 26: Edit6->Text= 1;break; case 27: Edit7->Text= 5;break; case 28: Edit7->Text= 4;break; case 29: Edit7->Text= 3;break; case 30: Edit7->Text= 2;break; case 31: Edit7->Text= 1;break; } } //--------------------------------------------------------------------------- { } //--------------------------------------------------------------------------- { int Count; pTabSheet = ((TPageControl *)Sender)->ActivePage; { { { return; } } //--------------------------------------------------------------------------- |
leon17
一般會員 發表:5 回覆:14 積分:3 註冊:2006-12-31 發送簡訊給我 |
|
Stallion
版主 發表:52 回覆:1600 積分:1995 註冊:2004-09-15 發送簡訊給我 |
|
leon17
一般會員 發表:5 回覆:14 積分:3 註冊:2006-12-31 發送簡訊給我 |
|
Stallion
版主 發表:52 回覆:1600 積分:1995 註冊:2004-09-15 發送簡訊給我 |
|
leon17
一般會員 發表:5 回覆:14 積分:3 註冊:2006-12-31 發送簡訊給我 |
好的~Stallion大大
感激不盡 ===================引 用 文 章=================== 應該是你所有的Radio Button共用一個On Click的事件所致。 提供一個思考改善的方向: 1.維持每個 RadioButton 的 Tag值,但是把所有的On Click事件關連拿掉。 2.在經過每個Page裏面的RadioButton經過檢查都已經選擇了後,在選擇最後一頁時,運用一個類似OnChanging裏面寫法,應用Loop把所有的TEdit裏面的值再來加總算出結果。 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |