私はkivyの新人ですが、私はPythonとTkinterでまともな経験をしています。私はプログラムでKivyのカルーセルを制御しようとしています。基本的に、カルーセル内の画像を自動的に切り替えるために使用する外部のPythonプログラムがあります。例を作るために、私は別のファイルにいくつかのコードを持っている:kivyのカルーセルをプログラムで制御する
import time
while True:
time.sleep(1)
#do something to control the carousel
、その後、私は私のkivyアプリを持っている:
import kivy
from kivy.app import App
from kivy.uix.carousel import Carousel
from kivy.uix.image import AsyncImage
class CarouselApp(App):
self.srcs = ["https://stackoverflow.com/a/bunch.png", "/of/paths.jpg", "/to/images.png."]
def build(self):
self.carousel = Carousel(direction="right")
for i in range(0, len(self.srcs)):
src = self.srcs[i]
image = AsyncImage(source=src, allow_stretch=True)
self.carousel.add_widget(image)
return self.carousel
if __name__ == "__main__":
CarouselApp().run()
私はカルーセルに表示されているスライドを制御できるようにしたいと思いますトップコードを使用していますが、後で何も実行できないので、どうすればいいのか分かりません。App.run()
私はkivyのClock
モジュールを調査しましたが、特定の条件が満たされたときにスライドを切り替えることができます。私が与えた例は、私の考え方の一例です。
ご協力いただければ幸いです!
カルーセルの各要素にソースを追加しますか? – lmiguelvargasf
私はあなたが何を意味するか完全にはわかりません。イメージファイルのソースは、カルーセルが初期化される前に、すべて技術的に知られています。カルーセルアプリを作成した後で、外部の条件が満たされた後、私はカルーセルのスライドを切り替えたいと思っています。私は基本的に 'Carousel.load_next()'を実行したいと思いますが、私はカルーセルアプリの外からやりたいと思います。 – Taira
私は答えを出しましたが、これが役立つことを願っています。最後に、 'on_start'メソッドで関数をスケジューリングし、その関数でカルーセルを制御する必要があります。 – lmiguelvargasf