かいはつかんきょう:でるふぁいなな
おうえす:えくすぴ
表題の件、RadioGroupにおいて
縦一列で2つのRadioButton2つ設置しているのですが
RadioButtonのみクリックでチェックをつけたいのです。
今はRadioGroup内でRadioButton横周辺をクリックしても
チェックがついてしまうのですがこれを
回避する方法はないのでしょうか
ラジオボタンのWidthを最少にして、Caption:=''で
右にラベルを張り付けてはいかがでしょうか?
コードでも実装可能ですが、こっちの方が楽っぽいです。
procedure TForm4.Button1Click(Sender: TObject);
var
I,W : Integer;
Bitmap: TBitmap;
begin
Bitmap:= TBitmap.Create;
Bitmap.Canvas.Font.Assign(RadioGroup1.Font);
for I:=0 to RadioGroup1.Items.Count -1 do
begin
W := Bitmap.Canvas.TextWidth(RadioGroup1.Buttons[I].Caption);
RadioGroup1.Buttons[I].Width := W + 26; //26 は適当
//範囲を分かり易くする為に色付け
RadioGroup1.Buttons[I].Color := 60 + (40 * I);
end;
Bitmap.Free;
end;
RadioButton のラベル部分のクリックを無視したいのならもうすこし
工夫が必要ですが
ツイート | ![]() |