进入软件主界面满屏,不想别人再做其它操作,除非先退出程序,怎么实现阿?
请尽快指教.等待

解决方案 »

  1.   

    方法一:主界面显示后,在生成一个模态窗体,然后隐藏这个模态窗体,用户就不能操作了。除非强制退出
    方法二:阻塞键盘和鼠标输入,首先声明函数
    function Blockinput(fBlockInput:boolean):dword;stdcall;external"user32.dll'
    阻塞时使用 blockinput(true);
    释放时使用 blockinput(false);
    方法三:主窗体的操作内容都放到一个PANLE上,然后设置它的Enable := false;,用户就不能操作这个PANEL上的东东了,但可以关闭。
      

  2.   

    function Blockinput(fBlockInput:boolean):dword;stdcall;external"user32.dll'
    阻塞时使用 blockinput(true);
    释放时使用 blockinput(false);如果我没记错,如果按Ctrl+Alt+Del是可以解开这个阻塞的,因为microsoft不可能那么傻。
      

  3.   

    unit LockTheKB;interface
    uses
    Wintypes,  WinProcs;//键盘上锁
    Function DisableKeyboard: Boolean;
    //键盘解锁
    Procedure EnableKeyboard;implementationvar
    oldHook: Hhook;Function KbHook( code: Integer; wparam: Word; lparam: LongInt ): LongInt;
    Begin
    If code < 0 Then
      KbHook := CallNextHookEx( oldHook, code, wparam, lparam )
    Else
      KbHook := 1;
    End; // KbHookFunction DisableKeyboard: Boolean;
    //上锁
    Begin
    oldHook := SetWindowsHookEx( WH_KEYBOARD, @KbHook, Hinstance, 0 );
    DisableKeyboard := oldHook <> 0;
    End;Procedure EnableKeyboard;
    //解锁
    Begin
    If oldHook <> 0 Then
    Begin
      UnhookWindowshookEx( oldHook );
      oldHook := 0;
    End; // If
    End;
    end. 
      

  4.   

      xixuemao(俺可是㊣②㈧经儿滴人) 有劳了,分没问题,多谢多谢
      

  5.   

    给你发了,一定要记住邮件里的解锁密码啊,要不你就只能按机箱上的POWER键了^_^
    你直接运行那个PClient.exe试试就知道了。
      

  6.   

    将你的程序用 showModal 方式,然后,可用EnableWindow(GetDesktopWindow, true);EnableWindow(GetDesktopWindow, false);来控制如果你是想连快捷键都屏蔽的,那就比较麻烦
      

  7.   

    制造休眠的假象可以屏蔽ctrl+alt+del