📄 untfuncd.pas
字号:
{*******************************************************}
{ }
{ 单元名称: UntFuncD }
{ 创建日期: 2005-09-03 }
{ 摘要说明: 代码添加编辑单元 }
{ }
{ 详细说明: }
{ }
{ 参 阅: }
{ }
{ 已知问题: }
{ }
{ 待作事项: }
{ }
{ 作 者: 胡孟杰 }
{ Copyright (C) 2005 FdAuto }
{ 当前版本: 2.2 }
{ 版本历史: }
{ }
{*******************************************************}
unit UntFuncD;
{==========================================================================
单元接口部分
==========================================================================}
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Buttons, Menus, XPMenu, StdCtrls, ExtCtrls, ComCtrls, Clipbrd,
SynEdit, SynMemo, SynEditor;
type
TFrmFuncD = class(TForm)
Panel1: TPanel;
ComboType: TComboBox;
Label2: TLabel;
EditUses: TEdit;
Label1: TLabel;
EdtSubject: TEdit;
Splitter1: TSplitter;
MemoRemark: TMemo;
Label3: TLabel;
SBtnSave: TSpeedButton;
SBtnClose: TSpeedButton;
CheckBox1: TCheckBox;
SBtnNew: TSpeedButton;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
XPMenu1: TXPMenu;
CheckBox2: TCheckBox;
Label4: TLabel;
ComboBoxFunc: TComboBox;
SbtWin: TSpeedButton;
MemoConent: TSynEditor;
aSynUndo11: TMenuItem;
aSynRedo11: TMenuItem;
aSynFind11: TMenuItem;
aSynFindNext11: TMenuItem;
aSynReplace11: TMenuItem;
aSynReplaceNext11: TMenuItem;
N6: TMenuItem;
N7: TMenuItem;
N8: TMenuItem;
procedure SBtnCloseClick(Sender: TObject);
procedure ComboTypeDropDown(Sender: TObject);
procedure SBtnSaveClick(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure MemoRemarkDblClick(Sender: TObject);
procedure SBtnNewClick(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure CheckBox2Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure ComboTypeChange(Sender: TObject);
procedure ComboBoxFuncChange(Sender: TObject);
procedure PopupMenu1Popup(Sender: TObject);
procedure MemoConentDblClick(Sender: TObject);
procedure MemoConentKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure SbtWinClick(Sender: TObject);
procedure ComboBoxFuncExit(Sender: TObject);
procedure FormHide(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure MemoConentDragOver(Sender, Source: TObject; X, Y: Integer;
State: TDragState; var Accept: Boolean);
procedure MemoConentDragDrop(Sender, Source: TObject; X, Y: Integer);
procedure EdtSubjectDblClick(Sender: TObject);
procedure EditUsesDblClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FrmFuncD : TFrmFuncD;
IDList : Tstrings;
Edited : boolean;
{==========================================================================
单元实现部分
==========================================================================}
implementation
{==========================================================================
引用的单元,数据模块,DLL接口
==========================================================================}
uses UntDM, UntFaceD, UntMain, UntSysFaceD;
{$R *.dfm}
procedure TFrmFuncD.SBtnCloseClick(Sender: TObject);
var
k : integer;
begin
if Edited then
begin
//self.FormStyle := fsNormal;
CheckBox2.Checked := false;
k := Application.MessageBox(PChar('代码内容已经修改,是否保存?'),PChar('系统提示'),MB_YESNOCANCEL + MB_ICONQUESTION);
if k = idYES then
begin
self.SBtnSaveClick(Sender);
if Edited then
Exit;
end
else
if k = idCancel then
Exit;
end;
Edited := false;
Close;
end;
{==========================================================================
过程名: TFrmFuncD.ComboTypeDropDown
功 能: 组合框显示类别列表
参 数:
作 者: 胡孟杰
日 期: 2005.08.26
==========================================================================}
procedure TFrmFuncD.ComboTypeDropDown(Sender: TObject);
var
TypeList : Tstrings;
begin
TypeList := Tstringlist.Create;
Type_GetTypeList(DM.ADOConnection1, TypeList);
ComboType.Clear;
ComboType.Text := '选择代码类别';
ComboType.Items.AddStrings(TypeList);
TypeList.Free;
end;
{==========================================================================
过程名: TFrmFuncD.SBtnSaveClick
功 能: 保存代码
参 数:
作 者: 胡孟杰
日 期: 2005.08.26
==========================================================================}
procedure TFrmFuncD.SBtnSaveClick(Sender: TObject);
begin
//检查输入数据是否合法
if (ComboType.Text = '选择代码类别') or (ComboType.Text = '') then
begin
ShowInfo('请选择代码所属类别!');
ComboType.SetFocus;
Exit;
end;
if EdtSubject.Text = '' then
begin
ShowInfo('代码名称不能为空!');
EdtSubject.SetFocus;
Exit;
end;
//执行保存操作
if self.Tag > 0 then //编辑状态
begin
if Func_Edit(DM.ADOConnection1, Self.Tag, ComboType.Text, EdtSubject.Text,
EditUses.Text, MemoConent.Text, MemoRemark.Text) then
ShowInfo('保存成功!');
self.ComboBoxFunc.Text := EdtSubject.Text ;
self.Caption := EdtSubject.Text ;
end
else //添加状态
begin
if Func_AddNew(DM.ADOConnection1, ComboType.Text, EdtSubject.Text,
EditUses.Text, MemoConent.Text, MemoRemark.Text) then
ShowInfo('保存成功!');
self.ComboBoxFunc.Text := EdtSubject.Text ;
self.Caption := EdtSubject.Text ;
end;
Edited := false;
end;
{==========================================================================
过程名: TFrmFuncD.CheckBox1Click
功 能: 设置自动换行
参 数:
作 者: 胡孟杰
日 期: 2005.08.26
==========================================================================}
procedure TFrmFuncD.CheckBox1Click(Sender: TObject);
begin
if CheckBox1.Checked then
begin
MemoConent.ScrollBars := ssVertical;
MemoConent.WordWrap.Enabled := true;
end
else
begin
MemoConent.ScrollBars := ssBoth;
MemoConent.WordWrap.Enabled := false;
end;
//if ComboBoxFunc.ItemIndex > 0 then
// self.ComboBoxFuncChange(Sender);
end;
{==========================================================================
过程名: TFrmFuncD.MemoRemarkDblClick
功 能: 双击全选
参 数:
作 者: 胡孟杰
日 期: 2005.08.26
==========================================================================}
procedure TFrmFuncD.MemoRemarkDblClick(Sender: TObject);
begin
MemoRemark.SelectAll;
end;
{==========================================================================
过程名: TFrmFuncD.SBtnNewClick
功 能: 新建代码
参 数:
作 者: 胡孟杰
日 期: 2005.08.26
==========================================================================}
procedure TFrmFuncD.SBtnNewClick(Sender: TObject);
var
k : integer;
begin
if Edited then
begin
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -