0

私はインターネットで解決策を探してきました。こちらの Stackoverflow にもあります。しかし、私はこれまで運がありませんでした。

Windows 7 で実行されている Delphi 2006 アプリケーションで問題が発生しています。一部の ComboBoxes が表示されていません。まったく同じアプリケーションが Windows XP でも正常に動作します。

パッチを見つけようとしています。Vista/Windows 7 で Delphi 2006 アプリケーションを実行するときに、GUI を適切に表示するためのリンクまたはハックを知っている人はいますか?

このリンクを見つけました: http://www.theabsolute.net/sware/delphivista.html。しかし、それは私の問題を解決しません。

どんな助けでも大歓迎です。

/ブライアン

4

1 に答える 1

0

これはいくつかの問題の 1 つかもしれません。詳細についてはあまり説明していません。「一部のコンボボックスが表示されない」はあまり役に立ちません。

私が遭遇したことは、これらの種類の問題を引き起こしました:

  • アプリが通常のフォントで設計されている場合の大きなフォント
  • カスタム DPI 設定 (たとえば、「標準」の 96 DPI の代わりに 120 DPI)

ブライアンのコメントの後に編集:

それは本当に奇妙です。IDE でコンパイルされたアプリとコマンドラインでコンパイルされたアプリの視覚的な違いは見たことがありません。

私が考えることができる唯一のことは、コマンドライン バージョンに、コンボボックスに影響を与えるコンパイラ定義が含まれている可能性がある (可能性は低い) か、コマンドライン バージョンで .pas と .dfm の異なるバージョンが表示され、そのバージョンが表示されないことです。フォームにコンボボックスがありません。

影響を受ける .dfm および .pas ファイルのコピーがビルド マシン上に 1 つしかないことを確認し、コンパイル前にそれらのファイルの外観が正しいことを確認してください。(Windows 検索を使用して、ソース ファイルの複数のコピーを確認し、念のためにシステム全体を検索します。)

ビジュアル コントロールでこの問題が発生したことはありませんが、ソースの変更が反映されていないように見えたり、コンパイラが私とは異なるバージョンのファイルを認識していたために中断されなかったブレークポイントで発生したことがあります..ここに当てはまるかどうかはわかりませんが、確認する価値があるかもしれません。

于 2009-12-16T14:39:53.530 に答える