📄 wnaddpostuser.pas
字号:
unit WnAddPostUser;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Db, Grids, DBGrids,Bde,DbCtrls,DbTables, Buttons;
type
TFmAddPostuser = class(TForm)
GroupBox1: TGroupBox;
Label1: TLabel;
lbPostName: TLabel;
dbgUser: TDBGrid;
dsAvailUsers: TDataSource;
btnAdd: TBitBtn;
btnClose: TBitBtn;
procedure FormShow(Sender: TObject);
procedure btnAddClick(Sender: TObject);
procedure dsAvailUsersDataChange(Sender: TObject; Field: TField);
procedure btnCloseClick(Sender: TObject);
procedure dbgUserKeyPress(Sender: TObject; var Key: Char);
procedure FormKeyPress(Sender: TObject; var Key: Char);
private
programid : Integer;
PostNo : String;
procedure Init;
{ Private declarations }
public
{ Public declarations }
end;
var
FmAddPostuser: TFmAddPostuser;
implementation
uses UnDlgShell,DnUserManager,WnUserManager;
{$R *.DFM}
{ TFmAddPostuser }
procedure TFmAddPostuser.Init;
begin
with dmUserManager.qryAvailUsers,FmUserManager do
begin
programid := StrToInt(slProgramId.Strings[combPrograms.ItemIndex]);
PostNo := dmUserManager.qryPosts.FieldByName('postno').AsString;
lbPostName.Caption := dmUserManager.qryPosts.FieldByName('postname').AsString;
if dmUserManager.qryAvailUsers.Active then
dmUserManager.qryAvailUsers.Close;
ParamByName('programid').AsInteger := programid;
Open;
btnAdd.Enabled := not IsEmpty;
end;
end;
procedure TFmAddPostuser.FormShow(Sender: TObject);
begin
Init;
end;
procedure TFmAddPostuser.btnAddClick(Sender: TObject);
begin
try
with dmUserManager.insUserPosts do
begin
Open;
Insert;
FieldByName('programid').AsInteger := programid;
FieldByName('userno').AsString := dmUserManager.qryAvailUsers.FieldByName('userno').AsString;
FieldByName('postno').AsString := PostNo;
Post;
Close;
end;
except
on E:EDbEngineError do
begin
ShowError(E.Message);
Exit;
end;
end;
//重新选择操作员
with dmUserManager.qryAvailUsers do
begin
Close;
Open;
btnAdd.Enabled := not IsEmpty;
end;
//
end;
procedure TFmAddPostuser.dsAvailUsersDataChange(Sender: TObject;
Field: TField);
begin
if dsAvailUsers.DataSet.IsEmpty then
Exit;
btnAdd.Enabled := True;
end;
procedure TFmAddPostuser.btnCloseClick(Sender: TObject);
begin
dmUserManager.qryAvailUsers.Close;
Close;
end;
procedure TFmAddPostuser.dbgUserKeyPress(Sender: TObject; var Key: Char);
begin
if key = #13 then
if btnAdd.Enabled then
btnAdd.Click;
end;
procedure TFmAddPostuser.FormKeyPress(Sender: TObject; var Key: Char);
begin
if key = #27 then
btnClose.Click;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -