怎樣讓 RadioGroup 其中一個選項無法點選 |
尚未結案
|
charlie0914
一般會員 發表:1 回覆:2 積分:0 註冊:2004-11-18 發送簡訊給我 |
|
jumo
一般會員 發表:33 回覆:65 積分:24 註冊:2002-04-17 發送簡訊給我 |
var LastIdx: Integer; procedure TForm1.RadioGroup1Enter(Sender: TObject); begin LastIdx := RadioGroup1.ItemIndex; end; procedure TForm1.RadioGroup1Click(Sender: TObject); begin if CheckBox1.Checked and (RadioGroup1.ItemIndex = 1) then begin RadioGroup1.ItemIndex := LastIdx; end else LastIdx := RadioGroup1.ItemIndex; end; |
charlie0914
一般會員 發表:1 回覆:2 積分:0 註冊:2004-11-18 發送簡訊給我 |
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
也可以這樣:
procedure TForm1.CheckBox1Click(Sender: TObject); begin // CheckBox1 打勾, 則 RadioGroup1 的第 1 個選項 disable RadioGroup1.Cotrols[0].Enabled := not CheckBox1.Checked; end; procedure TForm1.CheckBox2Click(Sender: TObject); begin // CheckBox2 打勾, 則 RadioGroup1 的第 2 個選項 disable RadioGroup1.Cotrols[1].Enabled := not CheckBox1.Checked; end; // 依此類推 ...-- 棒球是從兩出局開始的. |
海星
高階會員 發表:41 回覆:217 積分:106 註冊:2003-01-09 發送簡訊給我 |
引言: 謝謝jumo,不過我更想知道,是否還有其他可行方法呢?或是可以使用某個屬性來設定嗎?還是有,不過他們的方法你不喜歡,我的方法程序更複雜,你可能更不喜歡用, 不過效果會比他們的方法好很多。 RadioGroup 其實就是 GroupBox 跟 RadioButton 組合而成的, 所以你就自己擺一個 GroupBox 跟數個 RadioButton 在裡面即可. 甚至你的 CheckBox 也可以擺在 GroupBox 裡面,讓你的外表看起來 較有一體性。 然後你就可以依照 CheckBox1 的 OnClick() 事件寫 RadioButton1.Enabled := CheckBox1.Checked; 就這樣一行而已就完成你的任務了. 那個 RadioButton1 就會灰色顯示. 不過比較繁雜的是某個 RadioButton 被點選時,你必須要自己處理, 把其他已點選的 RadioButton 去除,這個其實只要寫一個函數統一去 做就好,也不會很困難. 不過他們這樣只有一行你都不喜歡了,我的方法 這麼複雜你應該更不喜歡。 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |