Ich baue ein Kartenspiel mit Kivy 1.9.1. Ich hatte die Karten korrekt angezeigt, relativ zur Größe des Hauptfensters, über size_hint. Die Kartenklasse erbte von der Bildklasse und funktionierte großartig. Ich erkannte, dass ich die Karten klickbar machen musste, also änderte ich die Klasse, um stattdessen von der Button-Klasse zu erben. Aus irgendeinem Grund war diese Größe nicht gleich wie ein Bild. Die Hintergrund-PNG-Datei wurde verzerrt. Bitte helfen Sie. Das macht mich verrückt. Normalerweise deaktiviere ich size_hint, um dieses Problem zu vermeiden, aber ich brauche alles skaliert basierend auf der Größe des Hauptfensters.Warum verhält sich size_hint in Bildern anders als bei Schaltflächen?
ScreenManagement:
CardTableScreen:
<Card>:
size_hint: (.25, .25)
pos_hint: ({'left': .05})
<CardTableScreen>:
name: 'cardTable'
Card:
name: 'card0'
id: card0
pos: (self.width *.20 , root.height/2)
Card:
name: 'card1'
id: card1
pos: (self.width * .75, root.height/2)
Card:
name: 'card2'
id: card2
pos: (self.width * 1.30 , root.height/2)
Card:
name: 'card3'
id: card3
pos: (self.width * 1.85, root.height/2)
Card:
name: 'card4'
id: card4
pos: (self.width * 2.40, root.height/2)
Label:
name: 'handType'
id: handType
pos: (-(card0.width *.125), root.height * .30)
font_size: '18sp'
<Layout>:
orientation: 'vertical'
canvas.before:
Color:
rgba: 0,.25,0,1
Rectangle:
pos: self.pos
size: self.size
Python:
from kivy.uix.button import Button
class(Button): pass
Bitte geben Sie Ihren Code für diese Community gemäß [Anleitung zum Erstellen eines minimalen, vollständigen und überprüfbaren Beispiels] (http://stackoverflow.com/help/mcve) ein. –