OSDN Git Service

MaxValue changed
[winbottle/winbottle.git] / bottleclient / MultipleChoiceEditor.pas
1 unit MultipleChoiceEditor;
2
3 interface
4
5 uses
6   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
7   Dialogs, StdCtrls, ExtCtrls;
8
9 type
10   TfrmMultipleChoiceEditor = class(TForm)
11     pnlChoices: TPanel;
12     rgpChoices: TRadioGroup;
13     btnOk: TButton;
14     btnCancel: TButton;
15     procedure btnOkClick(Sender: TObject);
16     procedure btnCancelClick(Sender: TObject);
17   private
18     { Private \90é\8c¾ }
19   public
20     { Public \90é\8c¾ }
21   end;
22
23 var
24   frmMultipleChoiceEditor: TfrmMultipleChoiceEditor;
25
26 function MultipleChoiceEdit(CaptionStr: String; const Items: array of String;
27   var ItemIndex: integer): boolean;
28
29 implementation
30
31 {$R *.dfm}
32
33 function MultipleChoiceEdit(CaptionStr: String; const Items: array of String;
34   var ItemIndex: integer): boolean;
35 var MyfrmMultipleChoiceEditor: TfrmMultipleChoiceEditor;
36     i: integer;
37 begin
38   Application.CreateForm(TfrmMultipleChoiceEditor, MyfrmMultipleChoiceEditor);
39   with MyfrmMultipleChoiceEditor do begin
40     try
41       rgpChoices.Items.Clear;
42       rgpChoices.Caption := CaptionStr;
43       for i := 0 to High(Items) do begin
44         rgpChoices.Items.Add(Items[i])
45       end;
46       rgpChoices.ItemIndex := ItemIndex;
47       Result := ShowModal = mrOk;
48       if Result then begin
49         ItemIndex := rgpChoices.ItemIndex;
50       end;
51     finally
52       Release;
53     end;
54   end;
55 end;
56
57 //
58
59 procedure TfrmMultipleChoiceEditor.btnOkClick(Sender: TObject);
60 begin
61   ModalResult := mrOk;
62 end;
63
64 procedure TfrmMultipleChoiceEditor.btnCancelClick(Sender: TObject);
65 begin
66   ModalResult := mrCancel;
67 end;
68
69 end.