64bitでTPagecontolのOwerDrawが呼び出されない件
カテゴリー: ぷろぐらみんぐ/メモ
2015-02-13
困った!! Windows8 64bitで起動したら
PageControl の タブ が 表示されない!!
なんて こったー!!
google先生お願いします!!
http://qc.embarcadero.com/wc/qcmain.aspx?d=19859
http://codeverge.com/embarcadero.delphi.vcl.using/tpagecontrol-ondrawtab-and-win64/1068914
なるほどそうでしたか。
Delphi7での情報ですが Delphi2005でも表示されないので似たようなものでしょう
Delphi7-2005のバグのようです。
手順
(1)上記からコード(codeverge.comのコード)をぱくります
(2)VCLFixes.pasとして保存します
2か所修正します
{$IFDEF VER150} // Delphi7
{$ENDIF}
の部分を
{$IF defined(VER150) or defined(VER170)} // Delphi 7 , 2005
{$IFEND}
に書き換えます
(3) プロジェクトに上記のファイルを追加します
(4) 再構築すると対応完了です。
Delphi2005で構築してWindows8 64bitで無事修正起動できました。
でも、
WMCompareItem WMDeleteItem WMDrawItem WMMeasureItem
が バグっているそうです。
後日調査するとしましょう。
fix一覧表を作る必要がありそうですね。
PageControl の タブ が 表示されない!!
なんて こったー!!
google先生お願いします!!
http://qc.embarcadero.com/wc/qcmain.aspx?d=19859
http://codeverge.com/embarcadero.delphi.vcl.using/tpagecontrol-ondrawtab-and-win64/1068914
なるほどそうでしたか。
Delphi7での情報ですが Delphi2005でも表示されないので似たようなものでしょう
Delphi7-2005のバグのようです。
手順
(1)上記からコード(codeverge.comのコード)をぱくります
(2)VCLFixes.pasとして保存します
2か所修正します
{$IFDEF VER150} // Delphi7
{$ENDIF}
の部分を
{$IF defined(VER150) or defined(VER170)} // Delphi 7 , 2005
{$IFEND}
に書き換えます
(3) プロジェクトに上記のファイルを追加します
(4) 再構築すると対応完了です。
Delphi2005で構築してWindows8 64bitで無事修正起動できました。
でも、
WMCompareItem WMDeleteItem WMDrawItem WMMeasureItem
が バグっているそうです。
後日調査するとしましょう。
fix一覧表を作る必要がありそうですね。