📄 unitsendsmsform.pas
字号:
Exit;
end;
if s1='' then
begin
Application.MessageBox('常用短语类别不能为空,修改常用短语类别失败!', '错误', MB_OK + MB_ICONWARNING);
Exit;
end;
s2 := DM.DSet_TextGroup.FieldByName('textgroup_id').AsString;
if s2='' then
begin
Application.MessageBox('常用短语类别编号不存在,修改常用短语类别失败!', '错误', MB_OK + MB_ICONWARNING);
Exit;
end;
if not DM.UpdateTextGroup(s2, s1) then
begin
Application.MessageBox('更新常用短语类别数据失败!', '错误', MB_OK + MB_ICONWARNING);
Exit;
end;
OpenText;
end;
procedure TSendSMSForm.Action_DelSMSGroupExecute(Sender: TObject);
var
s2: string;
begin
//删除常用短语类别
s2 := DM.DSet_TextGroup.FieldByName('textgroup_id').AsString;
if s2='' then
begin
Application.MessageBox('常用短语类别编号不存在,修改常用短语类别失败!', '错误', MB_OK + MB_ICONWARNING);
Exit;
end;
if Application.MessageBox(PChar('真的要删除常用短语类别 "'+DM.DSet_TextGroup.FieldByName('textgroup_name').AsString+'" 及其类别下的所有常用短语吗?'),'提示',MB_OKCancel + MB_DEFBUTTON2 + MB_IconQuestion)<>ID_OK then
begin
Exit;
end;
if not DM.DelTextGroup(s2) then
begin
Application.MessageBox('更新常用短语类别数据失败!', '错误', MB_OK + MB_ICONWARNING);
Exit;
end;
OpenText;
end;
procedure TSendSMSForm.OpenAddr;
begin
try
DM.DSet_AddrGroup.Close;
DM.DSet_Addr.Close;
DM.DSet_AddrGroup.Open;
DM.DSet_Addr.Open;
except
Application.MessageBox('打开通讯簿数据错误!', '提示', MB_OK + MB_ICONWARNING);
Close;
end;
end;
procedure TSendSMSForm.OpenText;
begin
try
DM.DSet_TextGroup.Close;
DM.DSet_Text.Close;
DM.DSet_TextGroup.Open;
DM.DSet_Text.Open;
except
Application.MessageBox('打开常用短语数据错误!', '提示', MB_OK + MB_ICONWARNING);
Close;
end;
end;
procedure TSendSMSForm.RzBitBtn1Click(Sender: TObject);
begin
RzListView_AddRequest.Items.Clear;
end;
procedure TSendSMSForm.RzListView_AddRequestDblClick(Sender: TObject);
begin
RzListView_AddRequest.DeleteSelected;
end;
procedure TSendSMSForm.RzBitBtn3Click(Sender: TObject);
var
i: integer;
RequestTelList: TStrings;
RequestTel, RequestText: string;
Li: TListItem;
begin
RequestTelList := RzMemo_RequestTel.Lines;
for i:=0 to RzMemo_RequestText.Lines.Count-1 do
begin
RequestText := RequestText + Trim(RzMemo_RequestText.Lines.Strings[i]);
end;
RequestText := Trim(RequestText);
if RequestTelList.Count<=0 then
begin
Application.MessageBox('请输入电话号码!', '提示', MB_OK + MB_ICONINFORMATION);
RzMemo_RequestTel.SetFocus;
Exit;
end;
if (RequestText='') then
begin
Application.MessageBox('请输入短信内容!', '提示', MB_OK + MB_ICONINFORMATION);
RzMemo_RequestText.SetFocus;
Exit;
end;
if (Length(RequestText)>140) then
begin
Application.MessageBox('短信内容过长,每条短信内容最多只能输入140个字符或70个中文汉字!', '提示', MB_OK + MB_ICONINFORMATION);
RzMemo_RequestText.SetFocus;
Exit;
end;
for i:=0 to RequestTelList.Count-1 do
begin
RequestTel := Trim(RequestTelList.Strings[i]);
if RequestTel='' then continue;
Li := RzListView_AddRequest.Items.Add;
Li.SubItems.Add(NO_SEND);
Li.SubItems.Add(RequestTel);
Li.SubItems.Add(RequestText);
end;
end;
procedure TSendSMSForm.RzMemo_RequestTelKeyPress(Sender: TObject;
var Key: Char);
begin
if not (Key in ['0'..'9', #13, #8]) then Key := #0;
end;
procedure TSendSMSForm.RzBitBtn14Click(Sender: TObject);
var
i, iCount, iSend: integer;
Li: TListItem;
RequestTel, RequestText: string;
begin
iCount := RzListView_AddRequest.Items.Count;
if iCount<=0 then
begin
Application.MessageBox('请输入电话号码和短信内容,然后点击"添加到待发送列表"按钮!', '提示', MB_OK + MB_ICONINFORMATION);
RzMemo_RequestTel.SetFocus;
Exit;
end;
iSend := 0;
for i:=0 to iCount-1 do
begin
Li := RzListView_AddRequest.Items[i];
if Li.SubItems.Strings[0] = YES_SEND then continue;
RequestTel := Trim(Li.SubItems.Strings[1]);
RequestText := Trim(Li.SubItems.Strings[2]);
if (RequestTel='')or(RequestText='')or(Length(RequestText)>140) then continue;
if DM.AddRequest(FormatDateTime(FORMATDATETIME_DEF, Now), RequestTel, RequestText) then
begin
Li.SubItems.Strings[0] := YES_SEND;
Inc(iSend);
end
else
begin
Li.SubItems.Strings[0] := NO_SEND;
end;
end;
if iSend<=0 then
begin
Application.MessageBox('没有可以发送的短信,已经发送的短信不能重复发送!', '提示', MB_OK + MB_ICONINFORMATION);
Exit;
end;
// if Application.MessageBox(PChar('已经申请发送短信 ' + IntToStr(iSend) + ' 条,是否清除列表?'),'提示',MB_OKCancel + MB_DEFBUTTON1 + MB_IconQuestion)=ID_OK then
begin
RzListView_AddRequest.Items.Clear;
end;
end;
procedure TSendSMSForm.RzMemo_RequestTextChange(Sender: TObject);
begin
RzLabel_TextCount.Caption := IntToStr(Length(RzMemo_RequestText.Text)) + '/140';
end;
procedure TSendSMSForm.RzURLLabel2Click(Sender: TObject);
begin
with TSelectTelForm.Create(nil, RzMemo_RequestTel) do
begin
try
ShowModal;
finally
Free;
end;
end;
end;
procedure TSendSMSForm.RzURLLabel1Click(Sender: TObject);
begin
with TSelectTextForm.Create(nil, RzMemo_RequestText) do
begin
try
ShowModal;
finally
Free;
end;
end;
end;
procedure TSendSMSForm.RzBitBtn2Click(Sender: TObject);
var
phone_city, phone_area, phone_type, phone_region: string;
begin
if not DM.GetPhonePlace(Trim(RzEdit_QueryTel.Text), phone_city, phone_area, phone_type, phone_region) then
begin
//没找到
end;
RzEdit_QueryCity.Text := phone_city;
RzEdit_QueryArea.Text := phone_area;
RzEdit_QueryType.Text := phone_type;
RzEdit_QueryRegion.Text := phone_region;
RzBitBtn_EditTel.Enabled := True;
end;
procedure TSendSMSForm.RzEdit_QueryTelChange(Sender: TObject);
begin
RzBitBtn_EditTel.Enabled := False;
RzBitBtn_SaveTel.Enabled := False;
RzBitBtn_SaveTel.Enabled := False;
RzEdit_QueryCity.Enabled := False;
RzEdit_QueryCity.Color := clBtnFace;
RzEdit_QueryArea.Enabled := False;
RzEdit_QueryArea.Color := clBtnFace;
RzEdit_QueryType.Enabled := False;
RzEdit_QueryType.Color := clBtnFace;
RzEdit_QueryRegion.Enabled := False;
RzEdit_QueryRegion.Color := clBtnFace;
RzEdit_QueryCity.Text := '';
RzEdit_QueryArea.Text := '';
RzEdit_QueryType.Text := '';
RzEdit_QueryRegion.Text := '';
end;
procedure TSendSMSForm.RzEdit_QueryTelKeyPress(Sender: TObject;
var Key: Char);
begin
if Key=#13 then RzBitBtn2.Click;
end;
constructor TSendSMSForm.Create(AOwner: TComponent; SendTel, SendData: string);
begin
inherited Create(AOwner);
FSendTel := SendTel;
FSendData := SendData;
end;
procedure TSendSMSForm.RzBitBtn_EditTelClick(Sender: TObject);
begin
RzBitBtn_EditTel.Enabled := False;
RzBitBtn_SaveTel.Enabled := True;
RzEdit_QueryCity.Enabled := True;
RzEdit_QueryCity.Color := clWindow;
RzEdit_QueryArea.Enabled := True;
RzEdit_QueryArea.Color := clWindow;
RzEdit_QueryType.Enabled := True;
RzEdit_QueryType.Color := clWindow;
RzEdit_QueryRegion.Enabled := True;
RzEdit_QueryRegion.Color := clWindow;
end;
procedure TSendSMSForm.RzBitBtn_SaveTelClick(Sender: TObject);
var
phone_prefix, phone_city, phone_area, phone_type, phone_region: string;
begin
phone_prefix := Trim(RzEdit_QueryTel.Text);
phone_city := Trim(RzEdit_QueryCity.Text);
phone_area := Trim(RzEdit_QueryArea.Text);
phone_type := Trim(RzEdit_QueryType.Text);
phone_region := Trim(RzEdit_QueryRegion.Text);
if DM.UpdatePhonePlace(phone_prefix, phone_city, phone_area, phone_type, phone_region) then
begin
Application.MessageBox('电话号码归属地信息保存成功!', '提示', MB_OK + MB_ICONINFORMATION);
RzBitBtn_EditTel.Enabled := True;
RzBitBtn_SaveTel.Enabled := False;
RzEdit_QueryCity.Enabled := False;
RzEdit_QueryCity.Color := clBtnFace;
RzEdit_QueryArea.Enabled := False;
RzEdit_QueryArea.Color := clBtnFace;
RzEdit_QueryType.Enabled := False;
RzEdit_QueryType.Color := clBtnFace;
RzEdit_QueryRegion.Enabled := False;
RzEdit_QueryRegion.Color := clBtnFace;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -