单选按钮组组件的使用

 
unit UMain;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Buttons, StdCtrls, ExtCtrls;

type
  TfrmMain = class(TForm)
    pnlFont: TPanel;
    gbText: TGroupBox;
    edtText: TEdit;
    sbSong: TSpeedButton;
    SpeedButton2: TSpeedButton;
    SpeedButton3: TSpeedButton;
    SpeedButton4: TSpeedButton;
    sbBold: TSpeedButton;
    SpeedButton6: TSpeedButton;
    sbItalic: TSpeedButton;
    sbUnderLine: TSpeedButton;
    rgSample: TRadioGroup;
    btnAppend: TButton;
    btnDelete: TButton;
    btnInsert: TButton;
    btnExchage: TButton;
    btnOK: TButton;
    procedure sbSongClick(Sender: TObject);
    procedure SpeedButton2Click(Sender: TObject);
    procedure SpeedButton3Click(Sender: TObject);
    procedure SpeedButton4Click(Sender: TObject);
    procedure sbBoldClick(Sender: TObject);
    procedure sbItalicClick(Sender: TObject);
    procedure sbUnderLineClick(Sender: TObject);
    procedure btnAppendClick(Sender: TObject);
    procedure btnDeleteClick(Sender: TObject);
    procedure btnInsertClick(Sender: TObject);
    procedure btnExchageClick(Sender: TObject);
    procedure btnOKClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  frmMain: TfrmMain;

implementation

{$R *.dfm}

procedure TfrmMain.sbSongClick(Sender: TObject);
begin
  edtText.Font.Name := '宋体';
end;

procedure TfrmMain.SpeedButton2Click(Sender: TObject);
begin
  edtText.Font.Name := '隶书';
end;

procedure TfrmMain.SpeedButton3Click(Sender: TObject);
begin
  edtText.Font.Name := '黑体';
end;

procedure TfrmMain.SpeedButton4Click(Sender: TObject);
begin
  edtText.Font.Name := '楷体_GB2312';
end;

procedure TfrmMain.sbBoldClick(Sender: TObject);
begin
  if sbBold.Down then
    edtText.Font.Style := edtText.Font.Style + [fsBold]
  else
    edtText.Font.Style := edtText.Font.Style - [fsBold];
end;

procedure TfrmMain.sbItalicClick(Sender: TObject);
begin
  if sbItalic.Down then
    edtText.Font.Style := edtText.Font.Style + [fsItalic]
  else
    edtText.Font.Style := edtText.Font.Style - [fsItalic];
end;

procedure TfrmMain.sbUnderLineClick(Sender: TObject);
begin
  if sbUnderline.Down then
    edtText.Font.Style := edtText.Font.Style + [fsUnderline]
  else
    edtText.Font.Style := edtText.Font.Style - [fsUnderline];
end;

procedure TfrmMain.btnAppendClick(Sender: TObject);
var
  DefStr: String;
begin
  DefStr := '未命名';
  if InputQuery('请输入选项名称','选项名称',DefStr) then
  begin
    rgSample.Items.Add(DefStr);
  end;

end;

procedure TfrmMain.btnDeleteClick(Sender: TObject);
begin
  if rgSample.ItemIndex > -1 then
  begin
    rgSample.Items.Delete(rgSample.ItemIndex);
  end;

end;

procedure TfrmMain.btnInsertClick(Sender: TObject);
var
  DefStr: String;
  i: Integer;
begin
  if rgSample.ItemIndex = -1 then
  begin
    i := 0;
  end
  else
  begin
    i := rgSample.ItemIndex;
  end;

  DefStr := '未命名';
  if InputQuery('请输入选项名称','选项名称',DefStr) then
  begin
    rgSample.Items.Insert(i,DefStr);
  end;
end;

procedure TfrmMain.btnExchageClick(Sender: TObject);
var
  DefStr: String;
  i: Integer;
begin
  //确定要交换的位置
  if rgSample.ItemIndex = -1 then
  begin
    i := 0;
  end
  else
  begin
    i := rgSample.ItemIndex;
  end;

  DefStr := '0';
  if InputQuery('指定交换的选项','交换选项的索引号',DefStr) then
  begin
    rgSample.Items.Exchange(i,StrToInt(DefStr));
  end;


end;

procedure TfrmMain.btnOKClick(Sender: TObject);
var
  Str: String;
begin
  Str := '目前是'+IntToStr(rgSample.Items.Count)+'个选项'+#10#13;

  if rgSample.ItemIndex = -1 then
  begin
    Str := str + '你未选择任何一个选项'
  end
  else
  begin
    Str := Str + '您所选择的选项代号:' + IntToStr(rgSample.ItemIndex)+#10#13;
    Str := Str + '您所选择的选项名称' + rgSample.Items[rgSample.ItemIndex];
  end;
  MessageDlg(Str,mtInformation,[mbOK],0);
end;

end.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值