動態創建的控制元件,經常出現“delphi cannot focus a disabled or invisible window”的錯誤,跟進去是在forms.pas中有個錯
procedure TCustomForm.SetFocus;
begin
if not FActive then
begin
if not (Visible and Enabled) then//這里visible:=false 所以就出上面的錯
raise EInvalidOperation.Create(SCannotFocus);
SetWindowFocus;
end;
end;
哪位大大幫幫忙,急用,謝謝
uj5u.com熱心網友回復:
XXX.SetFocus陳述句不要在FormCreate中呼叫。。把可能相關的代碼貼上uj5u.com熱心網友回復:
樓上所言極是 表單如果動態創建的話 控制元件不要再 formcreate里 設定焦點 改到formshow里面uj5u.com熱心網友回復:
沒有主動去設定焦點,放到formshow里了也是不可以,我使用rz控制元件uj5u.com熱心網友回復:
你給控制元件設定焦點時先檢查一下控制元件的可見性和可用性uj5u.com熱心網友回復:
跟蹤了一下,出錯是因為visible:=fale.但是我在setfocus前設定visible := ture,還是會報錯。我將示例程式上傳了,請哪位大俠幫下忙。有意者請加我QQ:704879684示例位置:http://download.csdn.net/detail/wx810/5039978
uj5u.com熱心網友回復:
傳一份到我郵箱吧:[email protected],不知怎的下不了
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/146343.html
標籤:VCL組件開發及應用
上一篇:Delphi中用QuickRep以A5來預覽和列印,求解。急!
下一篇:關于chart背景色設定的問題
