• Console下Pause效果的函数


    function PauseConsole(Prompt: PAnsiChar): boolean;
    var
      hStdIn, hStdOut: THandle;
      dwRd, dwWr, i: Cardinal;
      cBuf: array [0..128] of TInputRecord;
    begin
      result := false;
      hStdIn := GetStdHandle(STD_INPUT_HANDLE);
      hStdOut := GetStdHandle(STD_OUTPUT_HANDLE);
      if ((hStdIn <> 0) and (hStdOut <> 0)) then
      begin
         WriteFile(hStdOut,Prompt[0],lstrlenA(Prompt),dwWr,nil);
         while ReadConsoleInput(hStdIn,cBuf[0],128,dwRd) do
         begin
           for i := 0 to dwRd do
           begin
             if ((cBuf[i].EventType = KEY_EVENT) and (cBuf[i].Event.KeyEvent.bKeyDown)) then
             begin
               Result := true;
               exit;
             end;
           end;
         end;
      end;
    end;

     

     

      try
        PauseConsole('Press a key to continue...');
      except
        on E:Exception do
          Writeln(E.Classname, ': ', E.Message);
      end;

  • 相关阅读:
    Linux问题汇总
    Linux问题汇总
    朴素贝叶斯分类器
    捕捉异常信息
    异常处理类
    sqlserver2008链接服务器的使用和oracle11g客户端修改字符集
    抛出异常
    添加水印
    验证码
    sqlserver数据库备份
  • 原文地址:https://www.cnblogs.com/key-ok/p/3380446.html
Copyright © 2020-2023  润新知