問題タブ [delphi-xe]

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 投票する
1 に答える
1049 参照

delphi - Delphi XE がデザイン パッケージをランダムにロードできないというアイデアはありますか?

コンポーネント登録 (コンポーネント自体は実行時) といくつかの IDE メニュー項目を含むデザイン パッケージを作成しました。

プロジェクト マネージャーのコンテキスト メニューで [インストール] メニュー項目をクリックすると、パッケージが読み込まれ、正常に (常に) 動作します。

IDE を閉じて再起動すると、パッケージ読み込まれる場合と読み込まれない場合があります。ランダムに見えます。しかし、それは通常、ロードするよりもロードしません。

コンポーネント/パッケージのインストールに移動すると、リストにパッケージが表示され、チェックボックスがオンになり、[コンポーネント] ボタンにパッケージ内のコンポーネントが表示されますが、パッケージの実行可能ファイル自体が IDE に読み込まれていません! (これは Process Explorer で確認しました)。再インストール (パッケージの削除 -> OK -> コンポーネント/パッケージのインストール -> 追加 -> OK) は役に立ちません。ただし、プロジェクト マネージャーのプロジェクトのコンテキスト メニューからアンインストール/インストールすると、常に役立ちます。

パッケージ内の各モジュールの初期化セクションに OutputDebugString を追加しました。そして、初期化セクションが実行されないことがわかりました。

実行時パッケージは、設計時パッケージと同じフォルダーにあります。フォルダーは PATH 環境変数にあります。また、Delphi の Bin フォルダーにパッケージを配置しようとしました。エラー メッセージはありません。奇妙な/診断的な OutputDebugStrings はありません。

何か案は?

PS私は2つの異なるマシンでこの動作をしています。1 つは Win7、もう 1 つは WinXP SP 2 です。

PPS Delphi 7 でこの動作を再現できませんでした。同じパッケージで、常に D7 ロード用に再コンパイルされます。

0 投票する
2 に答える
2446 参照

delphi - Delphi XEで背景画像をTListviewに設定するには?

Delphi XE で背景画像を TListview に設定するにはどうすればよいですか??

Windows Explorer のようなアプリケーションを作りたいです。

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

delphi - Delphi ジェネリック クラスは、そのクラス引数から派生できますか?

私は、ジェネリックで継承可能な TSingleton クラスを定義しようとしています。これが私が進行中のものです:

目標は、継承ツリーにシングルトン パターンを「挿入」できるようにすることでした。したがって、次のようなものを宣言する代わりに:

そこにシングルトンパターンを実装する必要がある場合、次のように宣言します。

残念ながら、これはうまくいきません。次のエラーが表示されます (D2010 の場合):

今、私は疑問に思っていましたが、これは Delphi XE で機能しますか? D2010でこれを機能させるために使用できる「クリーンハック」はありますか? これがうまくいかない根本的な理由はありますか?

0 投票する
2 に答える
739 参照

regex - DelphiXEでRegularExpressionsを設定するのに役立ちます

チェックstring1にRegularExpressionsを設定したい。

string1は次のように変更できます:

  • string1:='D1413578; 1038'
  • string1:='D2; 11'
  • string1:='D16; 01'
  • 、....。

string1には、文字「D」とセミコロンのみが常に存在します。

私はRegularExpressions1を設定しました:='\ b(D#\;#)\ b';

しかし、RegularExpressions1はstring1を正しくチェックできません。

vb6ではこのRegularExpressions1="D#;#"。しかし、それがDelphiにあるのかわかりませんか?

0 投票する
1 に答える
847 参照

windows - Delphi のカスタム コンポーネントで矢印キーを処理するにはどうすればよいですか?

私はデルファイXEを使用しています。TPanel からのコンポーネントを開発しています。TApGUITab=class(Tpanel) WMKeyDown メッセージを処理してキーダウン イベントを処理しましたが、矢印キーを押しても呼び出されず、イベントを呼び出す代わりに別のコントロールにフォーカスが設定されます。私は今どうすればいい?

0 投票する
1 に答える
2894 参照

delphi - 実行時にコントロールのために送り返す方法は?

まず、このファイルをダウンロードしてください(ダウンロード)。

Image1をユーザーに表示するためにForm2を「Sendtoback」に設定するにはどうすればよいですか?Image1.BringToFrontを使用します。しかし、このコードは機能しません!!

これが本体です:

0 投票する
1 に答える
745 参照

sql-server - nchar(1) フィールドを扱う Delphi XE Unicode

Delphi XEで dbGo を使用してTADODataset、SQL Server 2008 テーブルからデータを読み取ります。すべての文字列フィールドは nvarchar または nchar です。

nvarchar フィールドTWideStringFieldは問題なくマップされます。

問題はフィールドにあります。これは罰金nchar(1)にマップされますが、フィールドにはマップされません。フィールドを次のように構成すると、エラーが発生します。TStringFieldTWideStringFieldTWideStringField

フィールド の型が一致し'foobar'ません。予想:WideString実際:FixedChar

a を使用する際の問題TStringFieldは、それが UTF8 であり、アプリケーションを完全に Unicode に準拠させたいことです。

これに関する提案はありますか?

0 投票する
1 に答える
1129 参照

delphi - Delphi XEにリソースとして保存されている埋め込みswf(フラッシュファイル)を表示するコンポーネントはありますか?

Delphi実行可能ファイルにリソースとして保存されている埋め込みフラッシュムービー(swfファイル)を表示するのに最適なコンポーネントを誰かが推奨できますか?

delphiXeのTransparecyを使用してリソース内の.swfファイルを再生して読みたい

0 投票する
4 に答える
9624 参照

delphi - TDirect2DCanvas は遅いですか、それとも何か間違っていますか?

GDI に代わる代替手段を探している間、私はWindows 7 でDelphi の 2010 TDirect2DCanvasのパフォーマンスをテストしようとしていました。

Direct2D を使用して巨大なポリラインを描画してテストしたところ、GDI を使用して同じテストを実行した量の 500 分の 1 のデータでさえ、結果はとてつもなく遅くなりました (そして、GDI でバックバッファーとしてビットマップを使用することさえしませんでした。フォームキャンバスに直接描画しただけです)。

したがって、次のいずれかだと思います。a
) Direct2D は GDI より遅い。
b) TDirect2DCanvas が遅い。
c)私は何か間違ったことをしてい
ます。うまくいけば、それは c) です。

私が書いたテストコードは次のとおりです。

また、実際のコードで長いポリラインを描画したいと思っています。これは、私が取り組んでいるシステムが 2500 ポイントのポリライン (少なくとも 10K) を大量に描画する必要があるためです。

更新 (2010-11-06)

Direct2D がポリラインを好まないように思われることを以前に知りました。単一の線 (2 点のポリライン) を多く使用すると、より速く描画されます。

Chris Bensenのおかげで、アンチエイリアシングを使用しているときに大きなポリラインを使用すると速度が低下することがわかりました。そこで、Chris が提案したようにアンチエイリアシングを無効にすると、50k の線を描画するためにパフォーマンスが ~6000ms から ~3500ms になりました。

アンチエイリアシングを使用している間、Direct2D はポリラインを適切に処理しないため、まだ改善される可能性があります。アンチエイリアシングを無効にすると、まったく逆になります。

Direct2D で 50k の線を描画する時間は、アンチエイリアシングなしで大きなポリラインを描画した場合、約 50 ミリ秒です。いいね、えっ!

問題は、ビットマップに描画した場合、 GDI は Direct2D よりも高速であり、それが完了した後、結果をフォームに BitBlt で戻すと、 〜35msで描画され、同じグラフィックス品質で描画されます。また、Direct2D も既にバックバッファーを使用しているようです (EndDraw()呼び出されたときに描画するだけです)。

では、Direct2D の使用をスピード的に価値のあるものにするために、これを何らかの形で改善することはできますか?

更新されたコードは次のとおりです。

ちなみに、事前にジオメトリを作成するというChrisの提案を使用しても、速度はGDIとほぼ同じ速度ですが、それでも速くはありません.

私のコンピューターは Direct3D および OpenGL アプリを正常に実行しており、dxDiag の出力は次のとおりです: http://mydxdiag.pastebin.com/mfagLWnZ

この遅さの理由を誰かが説明してくれたらうれしいです。サンプルコードは大歓迎です。

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

delphi - Delphi XE IDE を開いたときのスタック オーバーフロー エラー

Delphi XE を開くと、このメッセージが表示され、IDE を閉じる必要があります。

メッセージ :

危険: スタック オーバーフロー - 作業を保存して Delphi XE を再起動します

Delphi と cpp XE をアンインストールして再インストールしましたが、すでにこのメッセージが表示されます。

なんで?