MessageUnit.pas
上传用户:zhuoer
上传日期:2007-01-08
资源大小:128k
文件大小:3k
源码类别:

远程控制编程

开发平台:

Delphi

  1. unit MessageUnit;
  2. interface
  3. uses
  4.   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  5.   Buttons, StdCtrls, ExtCtrls;
  6. type
  7.   TfrmMessage = class(TForm)
  8.     sbNoIcon: TSpeedButton;
  9.     Label1: TLabel;
  10.     sbWarning: TSpeedButton;
  11.     sbInfo: TSpeedButton;
  12.     sbStop: TSpeedButton;
  13.     sbQuest: TSpeedButton;
  14.     rgType: TRadioGroup;
  15.     txtMessage: TEdit;
  16.     Label2: TLabel;
  17.     Label3: TLabel;
  18.     cmdSend: TButton;
  19.     cmdCancel: TButton;
  20.     cmdTest: TButton;
  21.     Label4: TLabel;
  22.     txtCaption: TEdit;
  23.     procedure FormCreate(Sender: TObject);
  24.     procedure sbNoIconClick(Sender: TObject);
  25.     procedure sbWarningClick(Sender: TObject);
  26.     procedure sbInfoClick(Sender: TObject);
  27.     procedure sbStopClick(Sender: TObject);
  28.     procedure sbQuestClick(Sender: TObject);
  29.     procedure cmdTestClick(Sender: TObject);
  30.     procedure cmdCancelClick(Sender: TObject);
  31.     procedure cmdSendClick(Sender: TObject);
  32.   private
  33.     { Private declarations }
  34.   public
  35.     { Public declarations }
  36.   end;
  37. var
  38.   frmMessage: TfrmMessage;
  39. implementation
  40. uses main;
  41.  var
  42.   CIcon : integer;
  43.   IconConst : array [0..4] of integer=(0, MB_ICONEXCLAMATION,
  44.          MB_ICONINFORMATION, MB_ICONSTOP,  MB_ICONQUESTION);
  45. {$R *.DFM}
  46. procedure TfrmMessage.FormCreate(Sender: TObject);
  47. begin
  48.  CIcon:=0;
  49. end;
  50. procedure TfrmMessage.sbNoIconClick(Sender: TObject);
  51. begin
  52.  CIcon:=0;
  53. end;
  54. procedure TfrmMessage.sbWarningClick(Sender: TObject);
  55. begin
  56.  CIcon:=1;
  57. end;
  58. procedure TfrmMessage.sbInfoClick(Sender: TObject);
  59. begin
  60.  CICon:=2;
  61. end;
  62. procedure TfrmMessage.sbStopClick(Sender: TObject);
  63. begin
  64.  CIcon:=3;
  65. end;
  66. procedure TfrmMessage.sbQuestClick(Sender: TObject);
  67. begin
  68.  CIcon:=4;
  69. end;
  70. procedure TfrmMessage.cmdTestClick(Sender: TObject);
  71.  var TSum : LongInt;
  72.      MCapt, MText : PChar;
  73.      MT, RT : string;
  74.      i : integer;
  75. begin
  76.  TSum:=0;
  77.  case rgType.ItemIndex of
  78.   1 : TSum:=MB_ABORTRETRYIGNORE;
  79.   2 : TSum:=MB_OKCANCEL;
  80.   3 : TSum:=MB_RETRYCANCEL;
  81.   4 : TSum:=MB_YESNO;
  82.   5 : TSum:=MB_YESNOCANCEL;
  83.  end;
  84.  TSum:=TSum+IconConst[CIcon];
  85.  getMem (MCapt, 100);
  86.  StrPCopy (MCapt, txtCaption.Text);
  87.  RT:='';
  88.  MT:=txtMessage.Text;
  89.  for i:=1 to Length (MT) do
  90.   if MT[i]='|' then RT:=RT+chr(13)+chr(10) else RT:=RT+MT[i];
  91.  getMem (MText, 500);
  92.  StrPCopy (MText, RT);
  93.  MessageBox (frmMessage.Handle, MText, MCapt, TSum);
  94.  freeMem (MText);
  95.  freeMem (MCapt);
  96. end;
  97. procedure TfrmMessage.cmdCancelClick(Sender: TObject);
  98. begin
  99.  frmMessage.Close;
  100. end;
  101. procedure TfrmMessage.cmdSendClick(Sender: TObject);
  102.  var MT : string;
  103. begin
  104.  MT:='{MSG}'+txtCaption.Text+
  105.       '$$$'+txtMessage.Text+
  106.       '%%%'+inttostr(rgType.ItemIndex)+inttostr(CIcon);
  107.  ClientForm.ClientSocket.Socket.SendText (MT);
  108.  frmMessage.Close;
  109. end;
  110. end.