問題タブ [kivy-language]

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 に答える
1077 参照

python - Kivy ボタンを機能にリンクする

私が理解していないkivyに何かがあり、誰かが光を当てることができることを望んでいます。私はこのトピックをたくさん読みましたが、頭の中でつながっていないようです。

私の問題は、関数をkivyボタンにリンクすることから来ています。今、私は単純な機能を実行する方法を学ぼうとしています:

もっと複雑なことをしたい:

aおよびはkivybからの入力ラベルであり、ボタンをクリックすると回答が出力されます。

これは私がこれまでに持っているものです:

これは私のkivy言語ファイルです:

0 投票する
0 に答える
233 参照

python - カスタム Kivy ウィジェットのコールバック

Kivy でテンキーを作成し、テンキーに入力された値を読み取り、関数を のようなものにアタッチできるようにしたいと考えていますon_submit

私のクラスは次のようになります

私のKivyファイルは次のようになります

そして、このように定義することは可能ですか?

では、ウィジェットのインスタンスごとに定義されたコードを実行するのでしょうか? ありがとう!

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

widget - Kivy カスタムウィジェットがスタックしない

DTErrorBar という 1 つのカスタム ウィジェットを使用してサンプル レイアウトを作成しました。

私の例では、このウィジェットは次のような BoxLayout に含まれています。

しかし、boxLayout内にあるボタンや他のDTErrorBarとスタックすることはできません。これが私が得ているものです:

ここに画像の説明を入力

そして、これは私が期待するものです:

ここに画像の説明を入力

さて、どうやって期待したイメージを手に入れたのでしょうか? カスタム ウィジェットを使用するコードに小さな変更を加えて作成されました。

したがって、DTErrorBar ウィジェットを RelativeLayout 内にラップすると機能するように見えますが、DTErrorBar ウィジェット内のすべてのラッパーとして RelativeLayout が既にある場合、その理由はわかりません。

要約すると、予想される動作を得るために DTErrorBar の定義に何をする必要がありますか? 私の過ちから学ぶために、ここで何が間違っているのかを誰かが説明できれば興味深いでしょう、ありがとう。

予期しない場合の完全なコード: https://gist.github.com/payala/bc54f4d3d2378a97c26c9afe88858b07

予想外の場合の完全なコード: https://gist.github.com/payala/9de4de166c7c1942cc923c32550bf661

編集:jligezaの回答後の変更

Python 側では、DTErrorBar クラスは次のように宣言されています。

基本Widgetクラスから派生したカスタム ウィジェットを作成していました。Layout クラスから継承するように変更すると解決しました。

これを行うと、ウィジェット自体が RelativeLayout であるため、ウィジェット定義内に RelativeLayout を含める意味がなくなり、最終的なウィジェット定義コードは次のようになります。

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

python-2.7 - Kivy BoxLayout.orientation

私はkivyが初めてです。私を混乱させている BoxLayout クラスのプロパティについて何かがありorientationます: 向きを垂直に設定すると、子ウィジェットは実際には水平に設定され、逆もまた同様です。私は何を間違って理解していますか? なぜそれがそうであり、他の方法ではなく、より直感的であると決定されたのですか? ここに私のコードがあります:

これにより、次のウィンドウが生成されます。

ここに画像の説明を入力

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

python - Kivy チェックボックスでクリックを制限

フロート レイアウト エリアにチェックボックスを作成しようとしています。チェックボックスを生成していますが、クリックするたびに、ボックスになくてもTrueからFalseになります。誰かが洞察を提供できますか?

私のコード:

私の KV ファイル:

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

python - キャンバスでプロパティを使用すると TypeError: unsupported operand type(s) for *: 'int' and 'NoneType' が発生します

独自の ProgressBar* ウィジェットを実装しようとしています。

コードを実行すると、次のエラーが表示されます。

root.filled_ratioroot.empty_ratioincanvasを floatに置き換えると、エラーが消えます。したがって、canvasフロートである必要があるのに、何らかの理由でroot.filled_ratioasが表示されます。None

エラーは、代わりに次の場合にも消えます。

.. 私が使う:

私は何を間違っていますか?

* KivyにはすでにProgressBarがあります。

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

python - Kivyで複数のウィンドウを表示するにはどうすればよいですか?

まったく別の GUI から 1 つの GUI を開こうとしています。私はデスクトップで開発していますが、ウィンドウのサイズは互いに異なります。スクリーンマネージャーを見ましたが、これを行う簡単な方法があるように感じます。

前もって感謝します!

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

python-2.7 - KIVY 値エラー

天気予報アプリの作成について調べようとしています。現在、解決方法がわからないエラーが発生しています。

私は次のようになりますerror

都市、国 = data_item ValueError: アンパックする値が多すぎます

このエラーを解決するために助けていただければ幸いです

Python コード:

Kivy ファイル:

0 投票する
0 に答える
1866 参照

python-3.x - Kivyでのウィンドウのサイズ変更に伴う画像のサイズ変更

kivy で画像ファイルを表示することについていくつか質問があります。

kivyを使って遊戯訓練アプリを開発しています。次のようなスコアpngファイルを表示したいと思います。

ここに画像の説明を入力

その後、これを右から左に自動的にスクロールしたいと思います。

まず、ウィンドウのサイズを変更すると、次のようにスコアが伸びすぎます。画像の比率を維持したい。これを行う方法を教えてください。

ここに画像の説明を入力

kvファイル

pyファイル

第二に、kivyで画像ファイルを表示するには、どの方法を選択すればよいですか?

  1. ウィジェットのキャンバスに画像テクスチャで長方形を描く
  2. 画像ウィジェットを使用して画像をソースとしてロードする

理由を教えてください。これらの違いがわかりません。

最後に、canvas.before に白い四角形を描画して、Image ウィジェットの背景を白にしました。最初にキャンバスでこれを指示しましたが、スコアpngのない白い画面しか表示されませんでした。その後、代わりにcanvas.beforeで行いました。白地にスコアを表示できました。キャンバスで指示する理由を教えてください。

私の悪い英語でごめんなさい。

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

python - Kivy 非 GUI イベント

アプリが最初に読み込まれたときにアニメーションを開始しようとしています。ローディング画面が閉じた直後のIE。「on_enter」イベントにうんざりしていますが、うまくいかないようです。助けていただければ幸いです。

エラーの印刷画面