我如何等待变量在线程中更改?例如,我想等一个数字来改变.那么而不是使用Sleep()其他什么?
while SomeVariable > 0 do
Sleep(1);
Run Code Online (Sandbox Code Playgroud) 如何为从我的应用程序创建的特定窗口挂钩窗口消息.我做到了这一点,但我得到一个错误说E2036 Variable required.
type
TSomeClass = class
...
WndProc(code : integer; wParam: WPARAM; lParam: LPARAM ) : LResult;
...
end;
var
SomeClass: TSomeClass;
procedure TForm1.Button1Click(Sender: TObject);
begin
...
SomeClass := TSomeClass.Create;
SetWindowsHookEx(WH_CALLWNDPROC, @SomeClass.WndProc, 0, GetCurrentThreadId);
...
end;
Run Code Online (Sandbox Code Playgroud)