📄 languages.pas.svn-base
字号:
unit Languages;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Menus, ActnList, ComCtrls, ToolWin,
ExtCtrls, dxExEdtr, dxCntner, dxTL, dxDBCtrl, dxDBGrid, DB, ADODB,
dxDBTLCl, dxGrClms, wwfltdlg, wwDialog, Wwlocate, Wwintl;
type
TLanguagesForm = class(TForm)
Panel1: TPanel;
Image1: TImage;
CoolBar1: TCoolBar;
ToolBar2: TToolBar;
tlbFirst: TToolButton;
tlbPrior: TToolButton;
tlbNext: TToolButton;
tlbLast: TToolButton;
ToolButton1: TToolButton;
tlbInsert: TToolButton;
tlbUpdate: TToolButton;
tlbDelete: TToolButton;
ToolButton2: TToolButton;
tlbRefresh: TToolButton;
tlbLocate: TToolButton;
ToolButton5: TToolButton;
tlbPrint: TToolButton;
ToolButton7: TToolButton;
tlbExit: TToolButton;
SaveDialog1: TSaveDialog;
ActionList1: TActionList;
ActFirst: TAction;
ActPrior: TAction;
ActNext: TAction;
ActLast: TAction;
ActInsert: TAction;
ActUpdate: TAction;
ActDelete: TAction;
ActRefresh: TAction;
ActLocate: TAction;
ActSearch: TAction;
ActPrint: TAction;
ActExport: TAction;
ActExit: TAction;
PopupMenu1: TPopupMenu;
mmiPrint: TMenuItem;
mmiExport: TMenuItem;
dsLangs: TDataSource;
qryLangs: TADOQuery;
qryLangsLangNo: TStringField;
qryLangsLangName: TStringField;
qryLangsFontName: TStringField;
qryLangsTableName: TStringField;
ADOQuery1: TADOQuery;
wwIntl1: TwwIntl;
wwLocateDialog1: TwwLocateDialog;
wwFilterDialog1: TwwFilterDialog;
qryLangsSeqNo: TIntegerField;
qryLangsHelpFile: TStringField;
ScrollBox1: TScrollBox;
dxDBGrid1: TdxDBGrid;
dxDBGrid1LangNo: TdxDBGridColumn;
dxDBGrid1LangName: TdxDBGridColumn;
dxDBGrid1FontName: TdxDBGridColumn;
dxDBGrid1TableName: TdxDBGridColumn;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure ActFirstExecute(Sender: TObject);
procedure ActPriorExecute(Sender: TObject);
procedure ActNextExecute(Sender: TObject);
procedure ActLastExecute(Sender: TObject);
procedure ActInsertExecute(Sender: TObject);
procedure ActUpdateExecute(Sender: TObject);
procedure ActDeleteExecute(Sender: TObject);
procedure ActRefreshExecute(Sender: TObject);
procedure ActLocateExecute(Sender: TObject);
procedure ActSearchExecute(Sender: TObject);
procedure ActPrintExecute(Sender: TObject);
procedure ActExportExecute(Sender: TObject);
procedure ActExitExecute(Sender: TObject);
private
AReportName:string;
procedure ReportGetValue(const ParName: String; var ParValue: Variant);
{ Private declarations }
public
{ Public declarations }
end;
var
LanguagesForm: TLanguagesForm;
implementation
uses SYSDATA, AddLangs, CommFun;
{$R *.dfm}
procedure TLanguagesForm.FormCreate(Sender: TObject);
begin
qryLangs.Open;
AReportName:='';
end;
procedure TLanguagesForm.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
qryLangs.Close;
end;
procedure TLanguagesForm.ActFirstExecute(Sender: TObject);
begin
//最前
if qryLangs.IsEmpty then Exit;
qryLangs.First;
ActFirst.Enabled:=False;
ActPrior.Enabled:=False;
ActNext.Enabled:=True;
ActLast.Enabled:=True;
end;
procedure TLanguagesForm.ActPriorExecute(Sender: TObject);
begin
//上移
if qryLangs.IsEmpty then Exit;
qryLangs.Prior;
ActNext.Enabled:=not qryLangs.Eof;
ActLast.Enabled:=not qryLangs.Eof;
ActFirst.Enabled:=not qryLangs.Bof;
ActPrior.Enabled:=not qryLangs.Bof;
end;
procedure TLanguagesForm.ActNextExecute(Sender: TObject);
begin
//下移
if qryLangs.IsEmpty then Exit;
qryLangs.Next;
ActNext.Enabled:=not qryLangs.Eof;
ActLast.Enabled:=not qryLangs.Eof;
ActFirst.Enabled:=not qryLangs.Bof;
ActPrior.Enabled:=not qryLangs.Bof;
end;
procedure TLanguagesForm.ActLastExecute(Sender: TObject);
begin
//最后
if qryLangs.IsEmpty then Exit;
qryLangs.Last;
ActNext.Enabled:=False;
ActLast.Enabled:=False;
ActFirst.Enabled:=True;
ActPrior.Enabled:=True;
end;
procedure TLanguagesForm.ActInsertExecute(Sender: TObject);
begin
//新增
AddLangsForm:=TAddLangsForm.Create(Application);
AddLangsForm.Caption:='新增语种';
AddLangsForm.AInsert:=True;
AddLangsForm.ShowModal;
end;
procedure TLanguagesForm.ActUpdateExecute(Sender: TObject);
begin
//修改
if qryLangs.IsEmpty then
begin
ShowMsg('表记录为空,操作无效');
Abort;
end;
AddLangsForm:=TAddLangsForm.Create(Application);
AddLangsForm.Caption:='修改语种';
AddLangsForm.AInsert:=False;
AddLangsForm.ShowModal;
end;
procedure TLanguagesForm.ActDeleteExecute(Sender: TObject);
begin
//删除
if qryLangs.IsEmpty then
begin
ShowMsg('表记录为空,操作无效');
Abort;
end;
if ShowDialog('确定要删除此记录吗?')=IDYES then
begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('drop table '+qryLangsTableName.Value);
ADOQuery1.ExecSQL;
qryLangs.Delete;
end;
end;
procedure TLanguagesForm.ActRefreshExecute(Sender: TObject);
begin
//刷新
qryLangs.Close;
qryLangs.Open;
end;
procedure TLanguagesForm.ActLocateExecute(Sender: TObject);
begin
//查找
if qryLangs.IsEmpty then
begin
ShowMsg('表记录为空,操作无效');
Abort;
end;
wwLocateDialog1.Execute;
end;
procedure TLanguagesForm.ActSearchExecute(Sender: TObject);
var
I:Integer;
begin
//查询
wwFilterDialog1.SelectedFields.Clear;
for I:=0 to qryLangs.Fields.Count-1 do
begin
if qryLangs.Fields[I].Visible then
wwFilterDialog1.SelectedFields.Append(qryLangs.FieldList[I].FieldName);
end;
wwFilterDialog1.Execute;
end;
procedure TLanguagesForm.ActPrintExecute(Sender: TObject);
begin
//打印
SelectReport(qryLangs,AProgramID,AReportName,ReportGetValue);
ActRefresh.Execute;
end;
procedure TLanguagesForm.ActExportExecute(Sender: TObject);
begin
//导出到Excel
if qryLangs.IsEmpty then
begin
ShowMsg('表记录为空,操作无效');
Abort;
end;
SaveDialog1.Title:='导出到Excel';
SaveDialog1.Filter:='Excel文件(*.xls)|*.xls';
if SaveDialog1.Execute then
begin
try
dxDBGrid1.SaveToXLS(SaveDialog1.FileName,True);
ShowMsg('导出到Excel成功');
except
ShowMsg('导出到Excel失败,检查是否有安装Excel');
Abort;
end;
end;
end;
procedure TLanguagesForm.ActExitExecute(Sender: TObject);
begin
//退出
Close;
end;
procedure TLanguagesForm.ReportGetValue(const ParName: String;
var ParValue: Variant);
begin
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -