線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1946
推到 Plurk!
推到 Facebook!

怎樣讓 RadioGroup 其中一個選項無法點選

尚未結案
charlie0914
一般會員


發表:1
回覆:2
積分:0
註冊:2004-11-18

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-12-26 14:38:05 IP:61.64.xxx.xxx 未訂閱
請教一下: 我做了一個CheckBox選項,如果使用者勾選了,則如何讓 RadioGroup1 其中之一選項是無法點選的呢?
jumo
一般會員


發表:33
回覆:65
積分:24
註冊:2002-04-17

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-12-26 14:58:57 IP:203.66.xxx.xxx 未訂閱
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

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-12-27 08:18:46 IP:163.15.xxx.xxx 未訂閱
謝謝jumo,不過我更想知道,是否還有其他可行方法呢?或是可以使用某個屬性來設定嗎?
hagar
版主


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

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-12-27 08:21:36 IP:202.39.xxx.xxx 未訂閱
也可以這樣:
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

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-12-27 09:24:15 IP:220.130.xxx.xxx 未訂閱
引言: 謝謝jumo,不過我更想知道,是否還有其他可行方法呢?或是可以使用某個屬性來設定嗎?
還是有,不過他們的方法你不喜歡,我的方法程序更複雜,你可能更不喜歡用, 不過效果會比他們的方法好很多。 RadioGroup 其實就是 GroupBox 跟 RadioButton 組合而成的, 所以你就自己擺一個 GroupBox 跟數個 RadioButton 在裡面即可. 甚至你的 CheckBox 也可以擺在 GroupBox 裡面,讓你的外表看起來 較有一體性。 然後你就可以依照 CheckBox1 的 OnClick() 事件寫 RadioButton1.Enabled := CheckBox1.Checked; 就這樣一行而已就完成你的任務了. 那個 RadioButton1 就會灰色顯示. 不過比較繁雜的是某個 RadioButton 被點選時,你必須要自己處理, 把其他已點選的 RadioButton 去除,這個其實只要寫一個函數統一去 做就好,也不會很困難. 不過他們這樣只有一行你都不喜歡了,我的方法 這麼複雜你應該更不喜歡。
系統時間:2024-07-01 9:01:10
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!