問題タブ [wxpython]
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.
python - wxpython:OnDragOverでドラッグされたデータを調べるにはどうすればよいですか?
私はwxPythonのドラッグアンドドロップに少し戸惑っています(しかし、おそらくこの質問は他のGUIフレームワークのドラッグアンドドロップにも関係しています)。フレームワークは、ドラッグされているものが何であれ、現在のマウス位置がドロップするのに有効な場所であるかどうかをシステムに通知できるようにする、いくつかのコールバック(OnEnterおよびOnDragOver)を提供します。これらのメソッドから、wx.DragNone、wx.DragCopyなどを返すことができます。これらのメソッド内からGetDataを呼び出すことは許可されていません。つまり、ユーザーがドラッグしているデータを調べることは許可されていません。データが表示されない場合、ユーザーがここにドロップしても問題がないかどうかをどのように知ることができますか?
wxpython - wxGenericDirCtrl でディレクトリを隠す
私は wxGenericDirCtrl を使用しています。ディレクトリを非表示にする方法があるかどうかを知りたいのですが、特に親ノードの兄弟を非表示にしたいです。
たとえば、ディレクトリ構造が次のようになっているとします。
現在選択されているディレクトリが /a/c/d の場合、b と g を非表示にする方法はありますか?
私は現在、ほとんどのユーザーにとって無関係なディレクトリがたくさんあるディレクトリ構造で作業しているので、クリーンアップできるといいですね。
編集:違いが生じる場合、私はwxPythonを使用しています。これまでのところ、GTKバックエンドを使用してLinuxでコードをテストしただけですが、マルチプラットフォームにして、ネイティブを使用してWindowsとMacで使用する予定ですバックエンド。
python - クラス間で変数を渡す Python
ゲーム用のキャラクター生成ウィザードを作成しようとしています。あるクラスでは、キャラクターの属性を計算します。別のクラスでは、キャラクターの属性に基づいて利用できる専門分野をユーザーに表示しています。ただし、異なるクラス間で変数を渡す方法を思い出せません。
これが私が持っているものの例です:
問題は、BasicInfoPage クラスから MOS クラスへの "intelligence" 変数の使用方法がわからないことです。私はインターネットの周りからいくつかの異なることを試しましたが、何もうまくいかないようです. 私は何が欠けていますか?
編集これを投稿した後、あまり説明していないことに気付きました。1980 年代の Twilight 2000 RPG のコンピューター バージョンを作成しようとしています。
wxPython を使用してウィザードを作成しています。私のクラスの親クラスは wxPython の Wizard です。このウィザードは、ユーザーにキャラクターの作成を案内するので、基本情報ページ (クラス BasicInfoPage) で、ユーザーはキャラクターの名前を指定し、キャラクターの属性を「ロール」することができます。それが「self.intelligence」の由来です。
ユーザーがキャラクターの専門分野を選択するウィザードのさらに先のページで、彼女が作成した属性を使用しようとしています。利用できる専門分野は、キャラクターが持つ属性によって異なります。たとえば、知性が十分に高い場合、キャラクターは Intel Analyst になることができます。
特に OOP のアイデアで、プログラミングを始めてから数年が経ちました。そのため、基本的にクラスとメソッドを使用してグローバル変数を作成する方法について混乱しています。
python - 動的ラジオ ボタンの作成
wxPythonで、ラジオボタンのリストを作成して最初にリストを配置した場合、そのリストの内容を後で変更することはできますか?
たとえば、ウィジェットを最初に配置するために boxSizer を使用するパネルがあります。これらのウィジェットの 1 つは、ラジオ ボタンのリストです (通常のラジオ ボックスも試しました)。別のクラスの変数に基づいてリストを動的に変更したいと思います。
ただし、リストがサイザーに配置されると、事実上「ロック」されます。リストを変更して変更を表示させることはできません。リストをサイザーに再度追加しようとすると、パネルの左上隅に配置されます。
元のリストを非表示にして、新しいリストを手動で同じ位置に配置できると確信していますが、それは面倒なように感じます。私はこれをそれよりも難しくしていると確信しています。私はおそらくこれに間違ったウィジェットを使用しており、ましてや間違ったアプローチではありませんが、学習経験としてこれを構築しています。
macos - wxを使用してmacosxでメニューバーアイコンを設定する方法
wxを使用してOSXでメニューバーアイコンを作成する方法についてのポインタが見つかりませんでした。もともとはwxTaskBarIconクラスで十分だと思っていましたが、実際にはDockにアイコンが作成されます。Windowsでは、wxTaskBarIconはSystrayアイコンと関連するメニューを作成しますが、mac osxではメニューバーアイコンを作成すると思いますが、そうではないと思います。
python - 長時間実行されるタスク中に GUI の応答性を維持する
アプリケーションが CPU を多用する処理を行っている間、GUI の応答性を維持することは、効果的な GUI プログラミングの課題の 1 つです。
wxPython でこれを行う方法についての良い議論があります。要約すると、3つの方法があります。
- スレッドを使用する
- wxYield を使用する
- 作業をチャンクし、IDLE イベント ハンドラーで実行します。
どの方法が最も効果的だと思いましたか? 他のフレームワーク (Qt、GTK、Windows API など) からのテクニックも歓迎します。
python - CSS/スタイル シートをサポートする wxPython に代わる Visual Library はありますか?
私は、wxPython (python の wxWindow ポート) を広く使用するプログラムを開発しました。
成熟したライブラリとはいえ、依然として非常に原始的でプログラミング指向です。これは時間がかかり、柔軟性がまったくありません。
すべてのビジュアル ディメンションがスタイル シートによって構成されている Flex/Action Script のようなものがあるかどうかを確認したいと思います。
何かご意見は?
python - Python GUI アプリケーションの再配布
中小規模のデスクトップ GUI アプリケーションを開発する必要があります。時間の制約があるため、できれば Python を選択した言語として使用します。
ユーザーがPythonをインストールしておらず、明らかに私が使用しているGUIライブラリも持っていないと仮定して、アプリケーションをスタンドアロンで再配布できるGUIライブラリの選択肢は何ですか?
また、ターゲット OS ごとに適切なサイズのバイナリにすべてをパッケージ化するにはどうすればよいでしょうか? (私の主なターゲットは Windows と Mac OS X です)
追加: 私は WxPython を調べてきましたが、cx_freeze でパッケージ化して 30 MB 以上のバイナリを取得するという恐ろしい話がたくさん見つかりました。実際にパッケージ化を行う方法と、それがどれほど信頼できるかについての実際のアドバイスはありません。
wxpython - wxPython で wx.TextCtrl コントロールからスクロール位置/範囲を取得するにはどうすればよいですか?
開発中のキットからデータを受け取る小さなロギング アプリ (wxPython で作成) があり、スクロール ウィンドウにテキストを表示したいと考えています。現状では、テキスト表示に wx.TextCtrl を使用していますが、スクロール動作に問題があります。
基本的に、スクロールバーがウィンドウの下部 (つまり、受信データの最後) にある場合、データを追加するとビューが前方にスクロールされるようにしたいと思います。ただし、ビューが少し上にスクロールされた場合 (つまり、ユーザーがエラー メッセージなどの興味深いものを見ている場合)、アプリはスクロールせずに最後にテキストを追加する必要があります。
現在、次の 2 つの問題があります。
- 現在のスクロール位置を取得する方法がわかりません (GetScrollPos() の呼び出しが機能していないようです - 0 を返すだけです)。
- スクロール バーの現在の範囲を取得する方法がわかりません (GetScrollRange() を呼び出すと 1 が返されます)。
私は少しグーグルで検索しましたが、GetScrollPos と GetScrollRange が wx.TextCtrl に対して機能しないことを示唆するヒントがいくつかあるようです。他の誰かがこの分野で経験したことがありますか? 問題を解決する簡単な方法はありますか、それとも自分で wx.TextCtrl をロールバックする必要がありますか?
python - wxPythonの複数のオブジェクトに共通のフォントスキームを適用する
多くの場合、wxPythonアプリケーションの静的テキストに同じフォントスキームを使用します。現在、SetFont()
静的テキストオブジェクトごとに呼び出しを行っていますが、これは多くの不要な作業のようです。ただし、wxPythonデモとwxPythonInActionの本ではこれについて説明していません。
SetFont()
毎回別々に呼び出すことなく、これらすべてのテキストオブジェクトに同じメソッドを簡単に適用する方法はありますか?