當我將滑鼠移到它們上方或通過代碼使整個表單無效/重繪時,丟失的按鈕會重新出現在螢屏上。我已經修復了,如果按下 ALT 鍵(以顯示快捷方式),這些將被重新繪制,但當 ALT 未按下時,問題甚至隨機出現。
當我洗掉按鈕下方的清單檔案時,顯示正常。需要清單,以便舊式按鈕看起來是圓形的。
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity type="win32"
name="xxxx"
version="6.0.0.0"
processorArchitecture="x86"
publicKeyToken="6595b64144ccf1df"
/>
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
processorArchitecture="X86"
publicKeyToken="6595b64144ccf1df"
language="*"
/>
</dependentAssembly>
</dependency>
</assembly>
uj5u.com熱心網友回復:
Delphi 7 不回應WM_UPDATEUISTATE訊息
TWinControl您可以通過使用以下代碼進行修補來解決此問題。
TWinControl = class(TControl)
private
procedure WMUpdateUIState(var Message: TMessage); message WM_UPDATEUISTATE;
...
end;
procedure TWinControl.WMUpdateUIState(var Message: TMessage);
begin
DefWindowProc(Handle, Message.Msg, Message.WParam, Message.LParam);
Invalidate;
end;
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/433781.html
上一篇:運行時和設計時組件流式傳輸的差異
