6 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
7 Dialogs, StdCtrls, ComCtrls, Spin, BottleDef, DateUtils;
10 TfrmLogDownload = class(TForm)
14 dtFrom: TDateTimePicker;
16 dtTo: TDateTimePicker;
22 spnMinVote: TSpinEdit;
23 spnMinAgree: TSpinEdit;
24 cbxChannel: TComboBox;
27 spnRecentCount: TSpinEdit;
29 rbRecent: TRadioButton;
30 rbRange: TRadioButton;
32 procedure btnCancelClick(Sender: TObject);
33 procedure btnOkClick(Sender: TObject);
34 procedure spnRecentCountChange(Sender: TObject);
35 procedure cbxUnitChange(Sender: TObject);
36 procedure dtFromChange(Sender: TObject);
37 procedure dtToChange(Sender: TObject);
38 procedure spnEdtEnterKeyDown(Sender: TObject; var Key: Word;
41 procedure SetChannel(const Value: String);
42 procedure SetDateHi(const Value: TDateTime);
43 procedure SetDateLo(const Value: TDateTime);
44 procedure SetMinAgree(const Value: integer);
45 procedure SetMinVote(const Value: integer);
46 function GetChannel: String;
47 function GetDateHi: TDateTime;
48 function GetDateLo: TDateTime;
49 function GetMinAgree: integer;
50 function GetMinVote: integer;
51 function GetIsRange: boolean;
52 procedure SetIsRange(const Value: boolean);
53 function GetRecentCount: integer;
57 function Execute: boolean;
58 property MinVote: integer read GetMinVote write SetMinVote;
59 property MinAgree: integer read GetMinAgree write SetMinAgree;
60 property Channel: String read GetChannel write SetChannel;
61 property DateLo: TDateTime read GetDateLo write SetDateLo;
62 property DateHi: TDateTime read GetDateHi write SetDateHi;
63 property IsRange: boolean read GetIsRange write SetIsRange;
64 property RecentCount: integer read GetRecentCount;
68 frmLogDownload: TfrmLogDownload;
74 procedure TfrmLogDownload.btnCancelClick(Sender: TObject);
76 ModalResult := mrCancel;
79 procedure TfrmLogDownload.btnOkClick(Sender: TObject);
81 if CompareDate(dtFrom.DateTime, dtTo.DateTime) = 1 then
82 ShowMessage('
\8aJ
\8en
\93ú
\82Í
\8fI
\97¹
\93ú
\82æ
\82è
\91O
\82É
\82µ
\82Ä
\82
\82¾
\82³
\82¢')
87 function TfrmLogDownload.Execute: boolean;
90 cbxChannel.Items.Clear;
91 for i := 0 to ChannelList.Count - 1 do begin
92 cbxChannel.Items.Add(ChannelList.ChannelItem[i].Name);
94 cbxChannel.Text := '';
96 spnRecentCount.Value := 1;
97 cbxUnit.ItemIndex := 1;
100 rbRecent.Checked := true;
102 spnMinVote.Value := 0;
103 spnMinAgree.Value := 0;
105 Result := ModalResult = mrOk;
108 function TfrmLogDownload.GetChannel: String;
110 Result := cbxChannel.Text;
113 function TfrmLogDownload.GetDateHi: TDateTime;
115 Result := dtTo.DateTime;
118 function TfrmLogDownload.GetDateLo: TDateTime;
120 Result := dtFrom.DateTime;
123 function TfrmLogDownload.GetMinAgree: integer;
125 Result := spnMinAgree.Value;
128 function TfrmLogDownload.GetMinVote: integer;
130 Result := spnMinVote.Value;
133 procedure TfrmLogDownload.SetChannel(const Value: String);
135 cbxChannel.Text := Value;
138 procedure TfrmLogDownload.SetDateHi(const Value: TDateTime);
140 dtTo.DateTime := Value;
143 procedure TfrmLogDownload.SetDateLo(const Value: TDateTime);
145 dtFrom.DateTime := Value;
148 procedure TfrmLogDownload.SetMinAgree(const Value: integer);
150 spnMinAgree.Value := Value;
153 procedure TfrmLogDownload.SetMinVote(const Value: integer);
155 spnMinVote.Value := Value;
158 procedure TfrmLogDownload.spnRecentCountChange(Sender: TObject);
160 rbRecent.Checked := true;
163 procedure TfrmLogDownload.cbxUnitChange(Sender: TObject);
165 rbRecent.Checked := true;
168 procedure TfrmLogDownload.dtFromChange(Sender: TObject);
170 rbRange.Checked := true;
173 procedure TfrmLogDownload.dtToChange(Sender: TObject);
175 rbRange.Checked := true;
178 function TfrmLogDownload.GetIsRange: boolean;
180 Result := rbRange.Checked;
183 procedure TfrmLogDownload.SetIsRange(const Value: boolean);
185 if Value then rbRange.Checked := true else rbRecent.Checked := true;
188 function TfrmLogDownload.GetRecentCount: integer;
191 case cbxUnit.ItemIndex of
197 Result := spnRecentCount.Value * u;
200 {SpinEdit
\82Å
\83G
\83\93\83^
\81[
\83L
\81[
\82ª
\89\9f\82³
\82ê
\82½
\82Æ
\82«
\82É
201 OK
\83{
\83^
\83\93\82ð
\89\9f\89º
\82·
\82é}
203 procedure TfrmLogDownload.spnEdtEnterKeyDown(Sender: TObject;
204 var Key: Word; Shift: TShiftState);
206 if Key = VK_RETURN then