問題タブ [vcl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
5 に答える
3262 参照

delphi - Delphi:ネットブックでは透明なコントロールが不透明になります

一部のコンピューターでは、何らかの理由で、フォームの透明なコントロールが不透明になります。「AcerNetbook」と「Thinkpadx600」で発生したという報告がありました。アプリケーションはDelphi2007で構築されています。

これはそれがどのように見えるかです: リンク

次のようになりますが、 リンク

フォームの不透明なコントロールはTLabelsとTStaticTextsです。

(ハンドルのないコントロール(ラベルなど)へのマウスメッセージはWM_NCHITTESTハンドラーに送られるため、TStaticTextコントロールを使用してクリック可能な領域を定義します。下部の「ボタン」は、誤って色をclNoneに設定したため、黒になっています。まったく見えるようになります。)

なぜそれが発生し、これを防ぐ方法(テキストを背景画像にレンダリングするなどの回避策を除く)?

編集:32ビットカラーでWindows XPを実行し、認定されたATIドライバを使用しているラップトップで問題を再現することができました。

0 投票する
3 に答える
2170 参照

delphi - 現在インストールされているVCLコンポーネントの完全なリストを「スキャン」する方法

私はまだこの質問に対する本当に満足のいく答えを見つけていません、そして今私自身を転がすことを考えています。私はModelMakerとGExpertsを持っていますが、どちらも私が探している包括的なクラス階層をロードしていないようです。同様に、DevExpressの人々は、継承するために完全なクラスリストをコンパイルするCDKコードをフォークすることはないと思います...;-)

それで...

登録されているすべてのコンポーネントクラス(または、同じように簡単/可能であれば、非コンポーネントを含むすべてのクラス)の自己参照テーブルを作成するだけの場合、それを実行するための最良の方法は何でしょうか。

注:プロパティ/メソッドの詳細は実際には必要ありません。クラス名(および親名)の完全なリストをテーブルに保存してツリービューに配置できます。それ以上のものは、ボーナス情報として大歓迎です。:-)


後で更新:

SOの「最近の」セクションに表示されますが、ここでは質問に表示されない1つの答え(おそらく彼らはそれを消去しましたか?)は、次のとおりです

。インストールされているすべてのコンポーネントを列挙します。」

そのコードは利用できますか?そうですか、どこに隠れていますか?勉強するのも面白いでしょう。

0 投票する
3 に答える
3212 参照

delphi - Delphi のランタイム パッケージとデザイン タイム パッケージに大騒ぎ

Delphi のほとんどのコンポーネント(VCL)が 2 つの部分に分かれていることを確認しました。
1) デザインタイム パッケージ
2) ランタイム パッケージ

なぜこのすべての大騒ぎ。RunTime と DesignTime の両方のパッケージを 1 つのパッケージにまとめると、どのような違いがありますか?

この分離ロジックを本当に理解できたことは一度もありません。

では、この背後にあるロジックは何ですか?

この区別は、Microsoft によって定められたコンポーネント標準の採用と準拠を避けるためだけに行われたと誰かに言われたことがあります。実際、これには論理がありません。

これは本当ですか?

0 投票する
6 に答える
6470 参照

c++ - 優れた (そして無料の) VCL GUI の代替

Borland C++ Builder 6 で構築されたかなり乱雑な VCL コードベースのプロジェクトがあります。現在の状態では保守が難しいため、ほとんどの部分を書き直すつもりです。VCL の優れた無料の代替手段を探しています。Windows 専用のクローズド ソースの商用プロジェクトです。

したがって、主な要件は次のとおりです。

  1. 商用のクローズドソース プロジェクトは無料
  2. Windows GUI を管理します。その他のコンポーネント (db リンクなど) は必要ありません
  3. 拡張可能であること (既存のものに基づいて独自の GUI コンポーネントを作成できるようにするため)
  4. STL フレンドリーであること。

可能であれば、長所と短所を含めて、提案を投稿してください。

編集

すべての答えをありがとう。Qt には Qt Linguist 翻訳スイートなどの優れた機能がいくつかあるため、Qt を使用することにしました。

0 投票する
6 に答える
8820 参照

delphi - TClientDataSet の TDateField の OldValue にアクセスする場合、「0.0」は有効なタイムスタンプではありません

TClientDataSet に新しく挿入されたレコードで次のコードを使用すると:

EConvertError が発生します。

DelphiのVCLのコードを見ると、値(Null)が無効なDateTimeであるため、値をTDateTimeに変換しようとすると、この例外が発生しますが、バリアントを比較していると、Nullになるバリアントが返されると思いましたこの場合、それは起こらず、代わりにこの例外が発生します。

State = dsInsert すべての OldValue が Null であるかのように、値を比較する前に DataSet.State = dsInsert かどうかを確認できることはわかっていますが、OldValue が単にすべてで Null を返すのではなく、値を変換しようとする理由を理解したいと思います。 State = dsInsert の場合のフィールド。

誰か光をくださいませんか?

0 投票する
6 に答える
5291 参照

delphi - TTreeNodeを非表示にすることはできますか?

TTreeNodeにはVisibleプロパティがないため、明らかなオプションは存在しません。TTreeNodeとそのすべての子ノードを非表示にする他の方法はありますか?もちろん、後でまた見えるようにしたいと思います。

これはDelphi2007の場合です。

注#1:私は代替のTVirtualTreeViewを知っていますが、TTreeViewでこれを実現する簡単な方法がないかどうかを確認します。

注#2:トップレベルノードにのみオプションが必要です。私が隠したいものは通常子供さえいません。

0 投票する
6 に答える
5314 参照

clipboard - TEditでコピー/貼り付けを無効にする方法

のコピー、切り取り、貼り付けを防止したいTEdit。これどうやってするの?

Key=NULLコントロールを押したときにonKeyDownイベントを設定してみCTRL+Vましたが、うまくいきませんでした。

0 投票する
5 に答える
5896 参照

delphi - PDFへのデータグリッドエクスポート

DBgrid に表示されているデータを PDF ファイルにエクスポートするにはどうすればよいですか?

0 投票する
3 に答える
1805 参照

delphi - TProgressBarではなくTLabelのみを使用してTurboDelphiでプログレスバーを作成する方法

だからここにロジック

1%="|"の場合 TLabel内および1つの「|」10回のループが必要です

したがって、100%=100倍に達するには"|" 1000回のループが必要です

コードを手伝ってもらえますか?

0 投票する
5 に答える
5289 参照

delphi - Turbo Delphi でプログレス バー付きのスプラッシュ スクリーンを作成するには?

(Unit1.pas)

(Unit2.pas)

(*.dpr)