問題タブ [tsavedialog]
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.
delphi - Windows 7でSaveDialog.Executeが何もしない
Windows 7 上の Delphi 2007 は、saveDialog.Execute 呼び出しで何もしません。数週間前に別の人がこれについて言及しているのを見たことがありますが、それは Borland c++ の場合でした。
delphi - Windows 7 でダイアログを開く/保存すると、アプリケーションがハングする
Delphi 7 で作成されたアプリケーションがあり、このアプリケーションは Windows XP で正常に動作します。
今、私は自分の PC を Windows 7 にアップグレードしました。このアプリケーションでは、TOpenDialog と TSaveDialog を実行してハングするボタンをクリックした場合を除いて、すべてが正常に動作します。
Windows 7 で Delphi 7 を使用しているときにこの問題が発生した人はいますか?
delphi - Delphi 2010 で TSaveDialog にチェックボックスを追加する方法
チェックボックスまたはその他の VCL コンポーネントを TSaveDialog に追加したいと考えています。
カントゥ曰く、
新しい Vista の [開く] および [保存] ダイアログ ボックス (IFileOpenDialog および
IFileSaveDialog インターフェイスによって実装される) は、新しい FileOpenDialog および FileSaveDialog コンポーネントによって直接マップされます が、グローバルな UseLatestCommonDialogs が設定されている場合、
標準の OpenDialog および SaveDialog コンポーネントも新しいスタイルを使用します。
それが何を意味するのかわかりません(インターフェイスプログラミングをしたことがありません...)
また、サードパーティのツールを使用したくありません。
TOpenPictureDialog コードを見てコピーしたところ、Web 検索で提案されたのを見ました。
パスのいずれかを試す前に、ここでガイダンスを求めたいと思いました。XP から Win7 までのソリューションで、最新の [ファイル]、[開く] ダイアログ ボックスに Windows バージョンに依存しない方法でチェックボックスを追加するための提案はありますか?
トム
delphi - 標準ダイアログがポップアップしない
TSaveDialog を含むフォームがあります。Execute 関数を呼び出しても、IDE から実行するとポップアップしません。スタンドアロンで実行するとポップアップします。もう少しテストしたところ、すべての TSave/TOpen ダイアログが機能しないことがわかりました。動作していないということは、ポップアップなしで Execute が返されることを意味しますFalse
(更新されたコード例を参照してください: ダイアログが先行することなく、常にメッセージ 'False' がポップアップします)。他のダイアログ(フォント/色など)は動作します。
デバッグなしで実行すると、ダイアログはどちらも表示されません。また、リリースまたはデバッグ構成が選択されているかどうかも問題ではありません。
どうやら IDE は奇妙なことをします。フォームには 2 つの TSaveDialog コンポーネントがあり、どちらも同じ動作を示します。
何が間違っているのですか?
Windows 7 で Delphi XE を使用するUpdate 1。TSaveDialogs を使用する他のプロジェクトは正常に動作します。
更新 2 TSaveDialog に関する元の質問がすべての TSave/TOpen ダイアログに適用されることがわかりました。この知識を含めるように質問が編集されました。
更新 3同様のエラーのこのリンクを見つけました。ただし、レジストリを確認しましたが、前述の実行可能ファイルが見つかりませんでした。TSaveDialog は IDE の外部で正常に動作するため、互換性を XP に変更するためのヒントは適用されません。
delphi - XE2 で保存ダイアログがハングする
Windows 8 で Delphi XE2 を使用しています。D2009 アプリケーションを XE2 に移植したところ、突然、保存ダイアログ (TSaveDialog) が非常に遅くなりました。
Project/Options/Application/Runtime Themes が Enable Runtime Themes に設定されている場合:
=>
保存ダイアログを開くと、ウィンドウが約 1 分間フリーズします (ウィンドウを閉じても、ダイアログ (または別の TOpenDialog) を再度開くまで約 1 分間待たなければならないことがあります)。新しい Vista スタイルの保存ダイアログが表示されます。
Windows 7 を搭載した PC でこの exe を実行しようとすると、起動時にアプリがハングします (XP 互換モードでも試しましたが成功しませんでした)。
Project/Options/Application/Runtime Themes が none に設定されている場合:
=>
保存ダイアログは適切に (高速に) 動作しますが、古いスタイルのダイアログが表示されます。以下の例を参照してください。
この exe は、Windows 7 を搭載した PC で適切に動作します (ただし、古いスタイルのダイアログを使用します)。
Ps。Win 7 PC で D2009 を使用してコンパイルした私の古い exe ファイルは、Win 7 と 8 の両方の PC で正常に動作し、新しい Vista ダイアログ スタイルを使用してダイアログを正しく表示します。
これを引き起こしているのは、Win 8/7 のいくつかの権限でしょうか? IDE FIX PACK 5.4 を使用しています。
ありがとう、トーマス
delphi - Vista スタイルの Open/SaveDialog のハンドルを取得するには?
Delphi アプリケーションによって開かれた新しいビスタ スタイルの Open/SaveDialog のウィンドウ ハンドルを取得したいと考えています。
古いスタイルのダイアログでは OnShow を解析することで可能でしたが、新しいスタイルのダイアログではそのようなイベントはありません。
Windows のすべてのウィンドウ ハンドルを反復処理して、そのようにする可能性はありますか?
ありがとう!
編集: OpenDialog.Handle がハンドルを返すことは知っていますが、ダイアログが表示されている場合のみです (それ以外の場合は 0)。ダイアログを表示した直後にハンドルをキャッチするイベントが必要です(ユーザーアクションなし、つまり、ダイアログでアイテムを選択する、ファイルタイプを変更するなど)。