⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 u_web_dyqzrq.pas

📁 以前写的一个利用P2P 技术的一个通讯的例子。里面用到了 DBISAM 、INDY 控件。
💻 PAS
📖 第 1 页 / 共 2 页
字号:
   case Key of
      VK_F2: bn_qdclick(sender);
      VK_RETURN: Perform(WM_NEXTDLGCTL, 0, 0);
      VK_Escape: BN_QXClick(Sender);
   end;
end;

procedure TF_WEB_DYQZRQ.BN_QXClick(Sender: TObject);
begin
   g_bsel := false;
   tran_str := '';
   close;
end;

procedure TF_WEB_DYQZRQ.BN_QDClick(Sender: TObject);
var
   num: integer;
begin
   case m_diff of
      0, 1, 3, 4, 6, 7, 10..12, 14, 17:
         begin
            check_date;
            g_bsel := true;
            tran_str := 'adate:' + ed_beg.Text + '*ddate:' + ed_end.Text + '*';
            close;
         end;
      2:
         begin
            if getstr(ed_beg.Text, '', true) = '' then
               begin
                  MessageDlg(lb_adate.Caption + null_msg, mtinformation, [mbok], 0);
                  ed_beg.SetFocus;
                  abort;
               end;
            if getstr(ed_end.Text, '', true) = '' then
               begin
                  MessageDlg(lb_ddate.Caption + null_msg, mtinformation, [mbok], 0);
                  ed_end.SetFocus;
                  abort;
               end;
            if ed_end.text < ed_beg.text then
               begin
                  MessageDlg(lb_ddate.Caption + pre_msg + lb_adate.Caption, mtinformation, [mbok], 0);
                  ed_end.SetFocus;
                  abort;
               end;
            g_bsel := true;
            tran_str := 'beg:' + ed_beg.Text + '*end:' + ed_end.Text + '*';
            close;
         end;
      5:
         begin
            if getstr(ed_beg.Text, '', true) = '' then
               begin
                  MessageDlg(lb_adate.Caption + null_msg, mtinformation, [mbok], 0);
                  ed_beg.SetFocus;
                  abort;
               end;
            if not verifydate(ed_beg) then
               begin
                  ed_beg.SetFocus;
                  abort;
               end;
            g_bsel := true;
            tran_str := 'date:' + ed_beg.Text + '*opno:' + ed_end.Text + '*';
            close;
         end;
      8, 13:
         begin
            check_date;
            if strtodate(ed_beg.text) - strtodate(gstr_pubdate) < 0 then
               begin
                  MessageDlg(lb_adate.Caption + pre_msg + sys_day, mtinformation, [mbok], 0);
                  ed_beg.SetFocus;
                  abort;
               end;
            g_bsel := true;
            tran_str := 'adate:' + ed_beg.Text + '*ddate:' + ed_end.Text + '*';
            close;
         end;
      9, 16:
         begin
            if getstr(ed_beg.Text, '', true) = '' then
               begin
                  MessageDlg(lb_adate.Caption + null_msg, mtinformation, [mbok], 0);
                  ed_beg.SetFocus;
                  abort;
               end;
            if getstr(ed_end.Text, '', true) = '' then
               begin
                  MessageDlg(lb_ddate.Caption + null_msg, mtinformation, [mbok], 0);
                  ed_end.SetFocus;
                  abort;
               end;
            if ed_end.text < ed_beg.text then
               begin
                  MessageDlg(lb_ddate.Caption + pre_msg + lb_adate.Caption, mtinformation, [mbok], 0);
                  ed_end.SetFocus;
                  abort;
               end;
            g_bsel := true;
            tran_str := 'beg:' + ed_beg.Text + '*end:' + ed_end.Text + '*';
            close;
         end;
      15:
         begin
            if getstr(ed_end.Text, '', true) = '' then
               begin
                  MessageDlg(lb_ddate.Caption + null_msg, mtinformation, [mbok], 0);
                  ed_end.SetFocus;
                  abort;
               end;
            g_bsel := true;
            tran_str := 'beg:' + trim(ed_beg.Text) + '*end:' + trim(ed_end.Text) + '*';
            close;
         end;
      18:
         begin
            if getstr(ed_beg.Text, '', true) = '' then
               begin
                  MessageDlg(lb_adate.Caption + null_msg, mtinformation, [mbok], 0);
                  ed_beg.SetFocus;
                  abort;
               end;
            if getstr(ed_end.Text, '', true) = '' then
               begin
                  MessageDlg(lb_ddate.Caption + null_msg, mtinformation, [mbok], 0);
                  ed_end.SetFocus;
                  abort;
               end;
            if strtocurr(getstr(ed_end.text)) - strtocurr(getstr(ed_beg.text)) < 0 then
               begin
                  MessageDlg(lb_ddate.Caption + pre_msg + lb_adate.Caption, mtinformation, [mbok], 0);
                  ed_end.SetFocus;
                  abort;
               end;
            g_bsel := true;
            tran_str := 'rate_min:' + getstr(ed_beg.Text) + '*rate_max:' + getstr(ed_end.Text) + '*';
            close;
         end;
      30, 32:
         begin
            if getstr(ed_beg.Text, '', true) = '' then
               begin
                  MessageDlg(lb_adate.Caption + null_msg, mtinformation, [mbok], 0);
                  ed_beg.SetFocus;
                  abort;
               end;
            if getstr(ed_end.Text, '', true) = '' then
               begin
                  MessageDlg(lb_ddate.Caption + null_msg, mtinformation, [mbok], 0);
                  ed_end.SetFocus;
                  abort;
               end;
            if strtocurr(getstr(ed_beg.Text)) - strtocurr(getstr(ed_end.Text)) < 0 then
               begin
                  MessageDlg(lb_adate.Caption + pre_msg + lb_ddate.Caption, mtinformation, [mbok], 0);
                  ed_beg.SetFocus;
                  abort;
               end;

            if (analy_str('costno', m_str) = '102') or (analy_str('costno', m_str) = '104') then
               ed_end.Text := ed_beg.Text;
            g_bsel := true;
            tran_str := 'adate:' + ed_beg.Text + '*ddate:' + ed_end.Text + '*';
            close;
         end;
   end;
end;

procedure TF_WEB_DYQZRQ.check_date;
begin
   if getstr(ed_beg.Text, '', true) = '' then
      begin
         MessageDlg(lb_adate.Caption + null_msg, mtinformation, [mbok], 0);
         ed_beg.SetFocus;
         abort;
      end;
   if not verifydate(ed_beg) then
      begin
         ed_beg.SetFocus;
         abort;
      end;
   if getstr(ed_end.Text, '', true) = '' then
      begin
         MessageDlg(lb_ddate.Caption + null_msg, mtinformation, [mbok], 0);
         ed_end.SetFocus;
         abort;
      end;
   if not verifydate(ed_end) then
      begin
         ed_end.SetFocus;
         abort;
      end;
   if strtodate(ed_end.text) - strtodate(ed_beg.text) < 0 then
      begin
         MessageDlg(date_msg, mtinformation, [mbok], 0);
         ed_end.SetFocus;
         abort;
      end;
end;

procedure TF_WEB_DYQZRQ.ED_BEGExit(Sender: TObject);
begin
   case m_diff of
      0, 1, 3, 4, 6..8, 10..14:
         begin
            if not verifydate(sender) then
               (sender as TFlatEdit).setfocus
            else
               (sender as TFlatedit).Text := datetostr(strtodate((sender as TFlatEdit).Text));
            if (m_diff >= 13) and (sender = ED_BEG) then
               ed_end.Text := datetostr(getmaxdate(ed_beg.text));
         end;
   end;
end;

procedure TF_WEB_DYQZRQ.FormMouseWheel(Sender: TObject;
   Shift: TShiftState; WheelDelta: Integer; MousePos: TPoint;
   var Handled: Boolean);
begin
   case m_diff of
      0, 1, 3, 4, 6..8, 10..14:
         begin
            if activecontrol = ED_BEG then
               ed_beg.Text := inc_date(ed_beg.text, WheelDelta)
            else
               if activecontrol = ED_END then
               ed_end.Text := inc_date(ed_end.text, WheelDelta);
            Handled := true;
         end;
   end;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -