📄 unit_info_manage.pas
字号:
unit Unit_info_Manage;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ExtCtrls, Mask, ComCtrls, Unit_DM, dxdbtrel,
jpeg, XPMenu, ExtDlgs, DB, IniFiles;
type
TForm_Info_Manage = class(TForm)
Label5: TLabel;
Label8: TLabel;
Label7: TLabel;
Label6: TLabel;
Label11: TLabel;
Label10: TLabel;
Label9: TLabel;
edCaption: TEdit;
rbTypebz: TRadioButton;
rbTypeLink: TRadioButton;
reContent: TRichEdit;
dtpDate: TDateTimePicker;
image1: TImage;
meLink: TMaskEdit;
Bevel1: TBevel;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
XPMenu1: TXPMenu;
sbClear: TSpeedButton;
sbRead: TSpeedButton;
OpenPictureDialog1: TOpenPictureDialog;
cbbClass1: TComboBox;
cbbClass2: TComboBox;
cbbClass3: TComboBox;
procedure BitBtn1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure sbReadClick(Sender: TObject);
procedure rbTypebzClick(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure cbbClass1Change(Sender: TObject);
procedure cbbClass2Change(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure sbClearClick(Sender: TObject);
private
procedure ReadSetup;
{ Private declarations }
public
{ Public declarations }
manage_type,imagefilename,imagetype:String;
localdir,remotedir:string;
end;
var
Form_Info_Manage: TForm_Info_Manage;
implementation
{$R *.dfm}
function strleft(const tempstr:string;rp:char):string;
var
i:integer;
Buffer: array [0..10] of char;
begin
for i:=0 to length(tempstr) do
if tempstr[i]=rp then
begin
strlcopy(Buffer,pchar(tempstr),i-1);
break;
end;
result:=Buffer;
end;
procedure TForm_Info_Manage.BitBtn1Click(Sender: TObject);
begin
close;
end;
procedure TForm_Info_Manage.FormCreate(Sender: TObject);
begin
Self.Left:= Round(Screen.Width/2-Width/2);
Self.Top :=Round(Screen.Height/2-Height/2);
Form_Info_Manage.ReadSetup;
{为一级分类下拉框添加分类}
with dm.adods do
begin
close;
commandtext:='select * from news_class';
Open;
first;
while not eof do
begin
if fieldvalues['iUpNo']=0 then
cbbclass1.Items.Add(inttostr(fieldvalues['iNo'])+'.'+fieldvalues['vName']);
next;
end;
end;
end;
procedure TForm_Info_Manage.sbReadClick(Sender: TObject);
var
Year, Month, Day, Hour, Min, Sec, MSec: Word;
begin
if openpicturedialog1.Execute then
begin
image1.Picture.LoadFromFile(openpicturedialog1.FileName);
imagetype:='add';
image1.Show;
if length(imagefilename)<1 then
begin
DecodeDate(now, Year, Month, Day);
DecodeTime(now, Hour, Min, Sec, MSec);
imagefilename:=format('%d%d%d%d%d%d%d.jpg',[year,month,day,hour,min,sec,msec]);
end;
end;
end;
procedure TForm_Info_Manage.rbTypebzClick(Sender: TObject);
begin
if rbtypebz.Checked then
begin
reContent.Enabled:=true;
sbClear.Enabled:=true;
sbRead.Enabled:=true;
meLink.Enabled:=false;
end
else
begin
reContent.Enabled:=false;
sbClear.Enabled:=false;
sbRead.Enabled:=false;
meLink.Enabled:=true;
end;
end;
procedure TForm_Info_Manage.BitBtn2Click(Sender: TObject);
begin
{检查数据录入}
if length(edCaption.Text)<1 then
begin
application.MessageBox('请填写标题.','提示',MB_OK);
edCaption.SetFocus;
exit;
end;
if length(cbbClass1.Text)<1 then
begin
application.MessageBox('请选择一级分类.','提示',MB_OK);
cbbClass1.SetFocus;
exit;
end;
{if length(cbbClass2.Text)<1 then
begin
application.MessageBox('请选择二级分类.','提示',MB_OK);
cbbClass2.SetFocus;
exit;
end;}
if rbTypeBz.Checked then
if length(reContent.Text)<1 then
begin
application.MessageBox('请填写信息内容.','提示',MB_OK);
reContent.SetFocus;
exit;
end;
if rbTypeLink.Checked then
if length(meLink.Text)<1 then
begin
application.MessageBox('请填写链接信息的地址.','提示',MB_OK);
meLink.SetFocus;
exit;
end;
{保存到数据库}
with dm.adsInfo do
begin
if manage_type='add' then
append;
if manage_type='edit'then
edit;
{赋值}
fieldvalues['vCaption']:=edCaption.Text;
fieldvalues['dDate']:=dtpDate.Date;
fieldvalues['iClass1No']:=strtoint(strleft(cbbClass1.Text,'.'));
if length(cbbclass2.Text)>3 then
fieldvalues['iClass2No']:=strtoint(strleft(cbbClass2.Text,'.'))
else
fieldvalues['iClass2No']:=0;
fieldvalues['iClass2No']:=strtoint(strleft(cbbClass2.Text,'.'));
if length(cbbclass3.Text)>3 then
fieldvalues['iClass3No']:=strtoint(strleft(cbbClass3.Text,'.'))
else
fieldvalues['iClass3No']:=0;
if rbTypeBz.Checked then
begin
fieldvalues['vType']:='本站';
fieldvalues['tContent']:=reContent.Text;
fieldvalues['vLink']:='';
fieldvalues['vImageType']:=imagetype;
fieldvalues['vimage']:=imagefilename;
if length(imagefilename)>4 then
image1.Picture.SaveToFile(format('%s%s',[localdir,imagefilename]));
end;
if rbTypeLink.Checked then
begin
fieldvalues['vType']:='链接';
fieldvalues['vLink']:=meLink.Text;
fieldvalues['tContent']:='';
end;
{保存到数据库}
try
post;
UpdateBatch();
application.MessageBox('信息已经保存.','提示',MB_OK);
except
application.MessageBox('信息保存不成功.','提示',MB_OK);
end;
if manage_type='add' then
begin
manage_type:='add';
caption:='新增信息';
edCaption.Text:='';
meLink.Text:='';
//cbbclass1.Text:='';
//cbbclass2.Text:='';
//cbbclass2.Enabled:=false;
//cbbclass3.Text:='';
//cbbclass3.Enabled:=false;
reContent.Text:='';
dtpDate.Date:=date();
rbTypebz.Checked:=true;
imageType:='no';
end;
if manage_type='edit'then
form_info_manage.Close;
end;
end;
procedure TForm_Info_Manage.cbbClass1Change(Sender: TObject);
var
upClassNo:integer;
begin
if length(cbbClass1.Text)>3 then
begin
upClassNo:=strtoint(strleft(cbbClass1.text,'.'));
cbbclass2.Text:='';
cbbclass3.Text:='';
cbbClass2.items.clear;
{为二级分类下拉框添加分类}
with dm.adods do
begin
first;
while not eof do
begin
if fieldvalues['iUpNo']=upClassNo then
cbbClass2.Items.Add(inttostr(fieldvalues['iNo'])+'.'+fieldvalues['vName']);
next;
end;
end;
cbbClass2.Enabled:=true;
end;
end;
procedure TForm_Info_Manage.cbbClass2Change(Sender: TObject);
var
upClassNo:integer;
begin
if length(cbbClass2.Text)>3 then
begin
upClassNo:=strtoint(strleft(cbbClass2.text,'.'));
cbbclass3.Text:='';
cbbClass3.items.clear;
{为三级分类下拉框添加分类}
with dm.adods do
begin
first;
while not eof do
begin
if fieldvalues['iUpNo']=upClassNo then
cbbClass3.Items.Add(inttostr(fieldvalues['iNo'])+'.'+fieldvalues['vName']);
next;
end;
end;
cbbClass3.Enabled:=true;
end;
end;
procedure TForm_Info_Manage.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
dm.adods.Close;
end;
procedure TForm_Info_Manage.sbClearClick(Sender: TObject);
begin
imagetype:='del';
image1.Hide;
end;
procedure TForm_Info_Manage.ReadSetup();
var
meihuisetup:TIniFile;
begin
meihuisetup := TIniFile.Create('meihui.ini');
LocalDir:=meihuisetup.ReadString('Image Setup','LocalSaveDir','');
RemoteDir:=meihuisetup.ReadString('Image Setup','RemoteSaveDir','');
meihuisetup.Free;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -