問題タブ [wxwidgets]
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.
c++ - GUIツールキット、どちらを使用すればよいですか?
私はかなり大規模で複雑なデータ分析プログラムを書いていますが、プログラムのGUIを構築する時が来たと思うようになりました。だから私の質問は:
どのGUIツールキットを使用する必要がありますか?
私はGUIのコーディングと構築にまったく慣れていないので、提供できるガイダンスをいただければ幸いです。それは世界で最も単純なツールキットである必要はありません、私はかなり速く学びます。ただし、次のことができる必要があります(これらのすべてではないにしても、特定のツールキットにとっておそらく信じられないほど基本的なものもありますが、念のためにこれらすべてを捨てるのが良いと思いました)。
グラフ(実際にはスペクトル)やプロットなどをユーザーが見ることができるように、画面に直接描画できるようにする必要があります。前述のスペクトルをクリックした場所の位置情報を収集できる必要があります。テキストを表示し、ユーザーからテキスト入力を受け取ることができる必要があります。メニューを生成できる必要があります(ファイル、編集などを知っています)。便利なテーブルを生成するための組み込みウィジェットがある場合(ただし、画面に直接描画できれば、その不足を克服できます)。警告、ダイアログボックス、保存して開くボックスなどをポップアップできる必要があります。これでほぼ完了です。これらのほとんどは、書き出すとかなり基本的なように見えますが、GUIを部分的にコーディングして取得したくありません。次に、IIが別のツールキットで書き直す必要があることに気付きます。
私はこのプログラムをC++で記述しており、GUI部分をCなどで記述したくないので、ツールキットはC++をサポートする必要があることに注意してください。
さらに、クロスプラットフォームツールキットは、単一プラットフォームツールキットよりも望ましいでしょう。ただし、それが単一のプラットフォームツールキットでなければならない場合は、Linux用にすることをお勧めします。
最後に、私は劇的に、クローズドソースツールキットよりもオープンソースツールキットを好みます。
それを超えて、私は何も追加することを考えることができません。よろしくお願いします。
うーん、答えに基づいて、QtとwxWidgetsの両方を見て、どちらが私にとってより魅力的かを確認します。私と一緒に複数の回答を受け入れたとして受け入れることはできましたが、受け入れられませんでした。2つのことを検討しているため、1つだけを受け入れるのは不公平です。おそらく1〜2週間で、ツールキットを調べて考えました。使いたいもの。
user-interface - wxWidgets で最小ウィンドウ サイズを設定するにはどうすればよいですか?
これは私が持っているウィジェットの階層です:
フレーム > wxBoxSizer > wxPanel > wxBoxSizer > wxFlexGridSizer (2 列、9 行) で、内部にさまざまなフォーム フィールドとボタンがあります。
最初の BoxSizer はパネルを配置するためのもので、2 つ目は FlexGrid の周囲に境界線を作成するためのものです。
すべてが見栄えがよく、ウィンドウを拡大するとフレームが適切に拡大されますが、サイズをほとんど変更できず、すべてのフォーム要素が非表示になります。
ウィンドウの最小サイズをデフォルトで FlexGridSizer によって提案されたものに強制するにはどうすればよいですか (すべてのフォーム要素が表示され、可能な最小サイズを持つ)。
python - wx.GridBagSizer のサイズを動的に設定する
ボタンウィジェットをパネルにドラッグするアプリを作成しています。ウィジェットをドロップするパネルにグリッドを表示して、ウィジェットがグリッドに配置されるようにしたいと思います。
GridBagSizer を使用して正方形が 15x15 ピクセルのグリッドを作成するのは難しくないと思いますが (ウィジェットは複数のセルにまたがるため)、パネルのサイズに応じて正方形の数を動的に作成するにはどうすればよいですか?
初期化時およびサイズ変更ごとに、パネルを埋めるために必要な正方形の数を計算する必要がありますか?
ところでpythonとwxpythonを使用しています。
エルヤン・ペッターセン
python - イベントハンドラで wxRichTextCtrl のカーソル位置を変更するには?
アプリケーションに RichTextCtrl があり、これには のハンドラーがありEVT_KEY_DOWN
ます。実行されるコードは次のとおりです。
リッチは私のRichTextCtrlです。
これが私がやりたいことです:
キーを押すたびに、キーをコントロールに追加します (これがデフォルトの動作です)。
コントロールの先頭、最初の位置にカーソルを移動します
実際に行うことは次のとおりです。
コントロールにキーを追加します
キャレットの位置を調べたところ、デバッガーはキャレットが 0,0 にあると報告しましたが、コントロールでは現在の位置で点滅します (キー + 1 を押す前の位置です)。
ここで何か問題がありますか?私が間違っていることがあるはずです。
python - wxpythonauinotebookタブを閉じるイベント
auinotebookのタブを閉じるときに使用されるイベントは何ですか?EVT_AUINOTEBOOK_PAGE_CLOSE(D)でテストしました。うまくいきませんでした。
また、タブ自体のイベントを右クリックして起動したいと思います。
auiマネージャー/ノートブックで使用できるすべてのイベントはどこにありますか?検索スキルが低いだけかもしれませんが、マウス/ウィンドウイベントではなく、存在するさまざまなイベントのリストを見つけることができません。完全なリストがあると本当に便利です。
Oerjan Pettersen
wxwidgets - ポップアップ メニューのラジオ項目のチェック
Windows (wxWidgets-2.8.9) で wxTaskBarIcon のポップアップ メニューを使用しています。ポップアップ メニューにラジオ アイテムを入力すると、クリックしても状態が変化しません。ポップアップ メニュー リストの最初の項目が選択済みとしてマークされます。ただし、他の項目を選択しても、これは変わりません。
現在、アイテム クリック イベント ハンドラはありません (アプリケーションは UI プロトタイプに似ています)。このハンドラーのアイテム チェック ステータスを手動で更新する必要がありますか?それともフレームワークの義務ですか?
qt - Qt または WxWidgets でパネルを自動的に隠す
ビジュアルスタジオ内のパネルに似たドッキングパネルを持つ方法を探しています。
基本的に、自動非表示に設定したり、固定して開いたりできるパネルです。
おそらく、この質問は少しあいまいでした。私が探しているのは本質的にこの製品です
この質問を解決したいので、詳細が不足している場合はコメントを残してください。私はグーグルをかなり検索しましたが、可能な解決策を見つけることができませんでした。さらに悪いことに、ショートカットを使用してサイドパネルを非表示および再表示することになります。
python - wxPython auinotebook.GetSelection() は最初のページへのインデックスを返します
「GetSelection()」が、「init」と「new_panel」で最後に作成されたページではなく、最初のページのインデックスを返すのはなぜですか? 「クリック」メソッドで正しいインデックスを返します。
出力は 0 0 1 1 2 2 になるはずですが、私の場合は 0 0 0 0 0 0 です。
ArchLinux で最新バージョンの python と wxpython を実行しています。
オルヤン・ペッターセン
c++ - wxWidgets: wxGLCanvas/wxGLContext でクラッシュする
これは少なくとも Windows XP の wxWidgets 2.8.9 と 2.8.10 で発生し、他のプラットフォームではテストしていません:
ホスト シーケンサーで実行される VST プラグインである a.dll と b.dll の 2 つの dll があります。wxWidgets と OpenGL を利用します。初期化時に、両方のプラグインでこれを呼び出します (ただし、m_width と m_height は異なります)。
a.dll または b.dll のみを開く限り、これは正常に機能します。また、a.dll または b.dll の複数のインスタンスを開くと、問題なく動作します。ただし、a.dll と b.dll を同時に開くとすぐに、ホスト シーケンサーは次の行を呼び出すとすぐにシャットダウンします (デバッグ中でも)。
それは私が出力で見ることができるものです: