Vielleicht hat jemand Lust sich das anzuschauen.
Vielen Dank
Gruß ganja
Code: Alles auswählen
#!/usr/bin/python3
# -*- coding: utf-8 -*-
import sys, math
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5 import Qt
from PyQt5.uic import loadUi
from PIL import Image
import PIL
from PIL.ImageQt import ImageQt
#from Image import Image
#from Image import *
class Application(Qt.QMainWindow):
	def __init__(self, parent=None):
		super().__init__(parent)
		#### ohne border
		#self.setWindowFlags(QtCore.Qt.FramelessWindowHint)
		
		self.ui = loadUi("wheel_gui.ui", self)
		
		self.start.clicked.connect(self.start_rotate)
		
		self.angle=0
		self.img_dict = {}
		self.angle_step = 0
		self.load_angle = 0
		self.step = 20
		
		pixmap = QtGui.QPixmap("pfeilunten1.png")
		self.label.setPixmap(QtGui.QPixmap(pixmap).scaled(50, 50, QtCore.Qt.IgnoreAspectRatio,QtCore.Qt.SmoothTransformation))
		self.label.setAlignment(QtCore.Qt.AlignCenter)
		
		#pixmap = QtGui.QPixmap("wheel.png")
		#self.label_2.setPixmap(QtGui.QPixmap(pixmap).scaled(650, 650, #QtCore.Qt.IgnoreAspectRatio,QtCore.Qt.SmoothTransformation))
		#self.label_2.setAlignment(QtCore.Qt.AlignCenter)
		
		im = Image.open('Gluecksrad_750_2.png')
		im = im.convert("RGBA")
		data = im.tobytes("raw","RGBA")
		qim = ImageQt(im)
		pix = QtGui.QPixmap.fromImage(qim)
		#self.label_2.setPixmap(pix)
		#self.graphicsScene.addPixmap(pix)
		#pix.show()
		#self.label_2(pix)
     
		self.load_image()
		self.label['image'] = self.img_dict[0]
		self.load_images()
           
     
	def start_rotate(self,event=None):
		if not self.angle_step:
			self.angle_step = 10
			self.angle = self.angle// 10 * 10
			self.img_rotate()
			self.Button['state'] = 'disabled'
			self.after(int(4500+random()*1000),self.wheel_stop)
     
	def load_images(self):
		if self.load_angle < 360:
			self.load_image()
			self.after(1,self.load_images)
     
     
	def load_image(self):
		self.img_dict[self.load_angle] = ImageQt(self.label_2.rotate(self.load_angle))
		#self.img_dict[self.load_angle] = ImageQt.PhotoImage(self.label_pil_img.rotate(self.load_angle))
		self.load_angle += 10
     
	def img_rotate(self):
		self.angle += self.angle_step
		self.angle = self.angle % 360
		if self.angle_step != 10:
			self.img = ImageQt(self.label_2.rotate(self.angle))
			self.label['image'] = self.img
			if not (self.angle % 15):
				self.angle_step = max(0,self.angle_step-1)
			if self.angle_step:
				self.after(self.step,self.img_rotate)
			else:
				self.Button['state'] = 'normal'
				print(self.angle)
		else:
			if self.angle not in self.img_dict:
				self.img_dict[self.angle] = ImageQt(self.label_2.rotate(self.angle))
			self.label['image'] = self.img_dict[self.angle]
			self.after(self.step,self.img_rotate)
     
	def wheel_stop(self,event=None):
		self.angle_step = 5
def main():
	app = Qt.QApplication(sys.argv)
	app_now = Application()
	app_now.show()
	#full ohne border
	#app_now.showFullScreen()
	app.exec_()
if __name__ == '__main__':
	main()
Code: Alles auswählen
    <?xml version="1.0" encoding="UTF-8"?>
    <ui version="4.0">
     <class>MainWindow</class>
     <widget class="QMainWindow" name="MainWindow">
      <property name="geometry">
       <rect>
        <x>0</x>
        <y>0</y>
        <width>961</width>
        <height>783</height>
       </rect>
      </property>
      <property name="windowTitle">
       <string>MainWindow</string>
      </property>
      <widget class="QWidget" name="centralwidget">
       <layout class="QVBoxLayout" name="verticalLayout">
        <item>
         <widget class="QWidget" name="widget" native="true">
          <layout class="QVBoxLayout" name="verticalLayout_2">
           <item>
            <widget class="QLabel" name="label">
             <property name="minimumSize">
              <size>
               <width>0</width>
               <height>50</height>
              </size>
             </property>
             <property name="maximumSize">
              <size>
               <width>16777215</width>
               <height>50</height>
              </size>
             </property>
             <property name="font">
              <font>
               <pointsize>48</pointsize>
               <weight>75</weight>
               <bold>true</bold>
              </font>
             </property>
             <property name="autoFillBackground">
              <bool>false</bool>
             </property>
             <property name="text">
              <string>v</string>
             </property>
            </widget>
           </item>
           <item>
            <widget class="QLabel" name="label_2">
             <property name="text">
              <string>TextLabel</string>
             </property>
            </widget>
           </item>
          </layout>
         </widget>
        </item>
        <item>
         <widget class="QWidget" name="widget_2" native="true">
          <property name="minimumSize">
           <size>
            <width>0</width>
            <height>100</height>
           </size>
          </property>
          <property name="maximumSize">
           <size>
            <width>16777215</width>
            <height>100</height>
           </size>
          </property>
          <layout class="QHBoxLayout" name="horizontalLayout_2">
           <item>
            <spacer name="horizontalSpacer_3">
             <property name="orientation">
              <enum>Qt::Horizontal</enum>
             </property>
             <property name="sizeHint" stdset="0">
              <size>
               <width>40</width>
               <height>20</height>
              </size>
             </property>
            </spacer>
           </item>
           <item>
            <widget class="QPushButton" name="start">
             <property name="minimumSize">
              <size>
               <width>0</width>
               <height>90</height>
              </size>
             </property>
             <property name="maximumSize">
              <size>
               <width>16777215</width>
               <height>90</height>
              </size>
             </property>
             <property name="font">
              <font>
               <pointsize>80</pointsize>
               <weight>75</weight>
               <bold>true</bold>
              </font>
             </property>
             <property name="text">
              <string>START</string>
             </property>
            </widget>
           </item>
           <item>
            <spacer name="horizontalSpacer_4">
             <property name="orientation">
              <enum>Qt::Horizontal</enum>
             </property>
             <property name="sizeHint" stdset="0">
              <size>
               <width>40</width>
               <height>20</height>
              </size>
             </property>
            </spacer>
           </item>
          </layout>
         </widget>
        </item>
       </layout>
      </widget>
     </widget>
     <resources/>
     <connections/>
    </ui>


