//poScreenCenter时,窗体会显示到主显示器的中央 MainForm.Position := poScreenCenter; function TGAEAMainForm.GetWorkArea(var R : TRect) : Boolean;var I : Integer;begin Result := False; for I := 0 to Screen.MonitorCount -1 do if Screen.Monitors[I].Primary then begin R
在Delphi里我记得是使用TThread.Synchronize(TThreadMethod),原理是利用了一个隐藏窗口来处理. 在QT Debug模式一下,碰到了同样的问题,显示错误: cannot send events to objects owned by a different thread 解决方案是使用信号槽,就是在线程里不断的发信号,UI线程的槽函数不断的接受信号并做处理: So as a solution I would propose the following: Defi
利用 keybd_event函数可实现,如下面的代码用以实现在一个公共菜单中模拟Ctrl_F按钮以调用DBGridEH的查找对话框功能:这是在一个ActionList中的某一Action的OnExecute事件代码. procedure TDM.act_LocateExecute(Sender: TObject); var myPopupMenu:TPopupMenu; MyDBGridEH:TDBGridEh; begin //ShowMessage(TMenuItem(TAction