| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133 |
- {*******************************************************************************
- 单元名称: ScProvinceFrm.pas
- 单元说明: 用于网络版选择省份。
- 作者时间: Chenshilong, 2010-11-16 17:27:41
- *******************************************************************************}
- unit ScProvinceFrm;
- interface
- uses
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- Dialogs, Grids, ExtCtrls;
- type
- TScProvinceForm = class(TForm)
- sgProvince: TStringGrid;
- procedure FormCreate(Sender: TObject);
- procedure sgProvinceDrawCell(Sender: TObject; ACol, ARow: Integer;
- Rect: TRect; State: TGridDrawState);
- procedure sgProvinceDblClick(Sender: TObject);
- private
- { Private declarations }
- public
- { Public declarations }
- procedure init;
- end;
- function ExecScProvinceForm(var AProvinceName: string): Boolean;
- implementation
- {$R *.dfm}
- function ExecScProvinceForm(var AProvinceName: string): Boolean;
- var
- ScPrvForm: TScProvinceForm;
- begin
- Result := False;
- ScPrvForm := TScProvinceForm.Create(nil);
- with ScPrvForm do
- begin
- try
- init;
- ShowModal;
- if ModalResult = mrOK then
- begin
- AProvinceName := sgProvince.Cells[sgProvince.Col,sgProvince.Row];
- Result := True;
- end;
- finally
- Free;
- end;
- end;
- end;
- { TForm1 }
- procedure TScProvinceForm.init;
- var i: Integer;
- begin
- for i := 0 to sgProvince.ColCount - 1 do
- begin
- sgProvince.ColWidths[i] := 60;
- end;
- for i := 0 to sgProvince.RowCount - 1 do
- begin
- sgProvince.RowHeights[i] := 22;
- end;
- sgProvince.Cells[0, 0] := '甘肃';
- sgProvince.Cells[1, 0] := '宁夏';
- sgProvince.Cells[2, 0] := '青海';
- sgProvince.Cells[3, 0] := '陕西';
- sgProvince.Cells[4, 0] := '广西';
- sgProvince.Cells[0, 1] := '河南';
- sgProvince.Cells[1, 1] := '山西';
- sgProvince.Cells[2, 1] := '辽宁';
- sgProvince.Cells[3, 1] := '吉林';
- sgProvince.Cells[4, 1] := '黑龙江';
- sgProvince.Cells[0, 2] := '内蒙古';
- sgProvince.Cells[1, 2] := '安徽';
- sgProvince.Cells[2, 2] := '江苏';
- sgProvince.Cells[3, 2] := '上海';
- sgProvince.Cells[4, 2] := '浙江';
- sgProvince.Cells[0, 3] := '江西';
- sgProvince.Cells[1, 3] := '山东';
- sgProvince.Cells[2, 3] := '贵州';
- sgProvince.Cells[3, 3] := '四川';
- sgProvince.Cells[4, 3] := '云南';
- sgProvince.Cells[0, 4] := '重庆';
- sgProvince.Cells[1, 4] := '北京';
- sgProvince.Cells[2, 4] := '福建';
- sgProvince.Cells[3, 4] := '广东';
- sgProvince.Cells[4, 4] := '海南';
- sgProvince.Cells[0, 5] := '河北';
- sgProvince.Cells[1, 5] := '天津';
- sgProvince.Cells[2, 5] := '湖北';
- sgProvince.Cells[3, 5] := '湖南';
- sgProvince.Cells[4, 5] := '西藏';
- sgProvince.Cells[0, 6] := '新疆';
- sgProvince.Cells[1, 6] := '香港';
- sgProvince.Cells[2, 6] := '澳门';
- sgProvince.Cells[3, 6] := '台湾';
- end;
- procedure TScProvinceForm.FormCreate(Sender: TObject);
- begin
- init;
- end;
- procedure TScProvinceForm.sgProvinceDrawCell(Sender: TObject; ACol, ARow: Integer;
- Rect: TRect; State: TGridDrawState);
- begin
- with Sender as TStringGrid do
- begin
- Canvas.FillRect(Rect);
- DrawText(Canvas.Handle, PChar(Cells[ACol, ARow]), Length(Cells[ACol, ARow]),
- Rect, DT_CENTER or DT_SINGLELINE or DT_VCENTER);
- end;
- end;
- procedure TScProvinceForm.sgProvinceDblClick(Sender: TObject);
- begin
- ModalResult := mrOK;
- end;
- end.
|