kivy.core.window から Window をインポートすると、クラッシュする 2 番目の Kivy ウィンドウが開きます。

オリバー・スペンサー

テクスチャのサポートを有効にして、numpy 配列から画像を表示できるようにするために、kivy.core.window インポート ウィンドウからインポートしようとしています ( https://groups.google.com/forum/#!topic/kivy-users/ を参照) 。 2Hvarxhz6lU )。

ただし、インポートを実行すると、Kivy は空白で応答しない別のウィンドウを開こうとします。import ステートメントを削除すると、アプリは通常どおり起動します。

この動作なしでテクスチャのサポートを許可するために Window をインポートする正しい方向を教えてくれる人はいますか?

ありがとう

オリバー

ピーター・バディダ

Kivy はこのインポート動作に基づいているため、これは非常に期待されています。Windowコンソールなどの単純なインポートの場合:

>>> from kivy.core.window import Window

空白の OpenGL ウィンドウが作成され、最初の描画やその他の初期化などのさらなる指示を待ちます。

メーリング リストのコードを見てみましょう。

class MainConsole():
    def build(self):
        texture = Texture.create()  # no window, boom
if __name__ == '__main__':
    MainApp().run()  # except other stuff also creates a window

これを実際に機能させるには、作成テクスチャを作成する必要があります。Windowつまり、次のようになります。

class MainConsole():
    def build(self):
        from kivy.core.window import Window
        texture = Texture.create()  # window, no boom

次のようなことをしようとすると、Thread(よくわからない) またはmultiprocessing(おそらく) でそれを実行しようとすると、苦労が発生する可能性があります。

def blob():
    from kivy.core.window import Window
    texture = Texture.create()

あなたが別のプロセスでこの機能を実行する場合、別のプロセスが同じを持っていませんWindowので、それが持つ新しいものを作成、Windowインポートを、ここにいます。

それを修正するには、次の 2 つのことができます。

  • 使用Configして移動Windowして表示領域のどこかをtopし、left
  • メイン内のテクスチャを作成して組み立てます Window

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

Related 関連記事

ホットタグ

アーカイブ