掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
LazarusでのTOpenDialogのカスタマイズについて (ID:148803)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
> [ TOpenDialog で表示したダイアログにコントロールを配置 ] > http://mrxray.on.coocan.jp/Delphi/Others/000-005.htm スレ主ではありませんが、↑のTOpenDialogExを変更し、以下の感じで コントロールを乗せることができました。 var FDlgInst :TOpenDialogEx; FMsgHook :HHOOK; function TOpenDialogEx.Execute: Boolean; begin FDlgInst := Self; FMsgHook := SetWindowsHookEx(WH_CALLWNDPROC, @GetMsgProc, 0, GetCurrentThreadID); try Result := inherited Execute; finally FDlgInst := nil; UnHookWindowsHookEx(FMsgHook); end; end; GetMsgProcは、このように変更 if (LClassName = '#32770') and (FDlgName = 'OpenDialog1') then begin ↓ if (LClassName = '#32770') and (FDlgInst <> nil) then begin なお、Lazarusでは、ランタイムテーマが有効でもDoShowが発生しました。 メモ帳の名前をつけて保存と同じようなダイアログが出たので、古いスタイルではない模様。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.