ハードドライブからファイルをロードするプログラムがあり、50x50 ピクセルのいくつかの正方形をペイントするよう指示されています。またComboBox
、提示された正方形に影響を与える 2 つの es があります。基本的に、2 つのComboBox
es はフォルダーとファイル名を指定します。
. ComboBox
_ ただし、別のウィンドウに切り替えてから元のウィンドウに戻るまで、表示されている四角形は更新されません。
これが私のpaintEvent
見た目です
def paintEvent(self,event):
self.updateButtons()
self.updateNameCombo()
qp = QtGui.QPainter()
qp.begin(self)
self.paintTiles(qp)
qp.end()
return
updateButton
画面の右側にPushButton
とを配置するために使用されます。コンボ ボックスの 1 つを更新するために使用され、画面上の正方形を描画するために使用されます。ComboBox
UpdateNameComobo
paintTiles
def paintTiles(self,qp):
self.loadTileSet()
width= self.frameSize().width()
height = self.frameSize().height()
self.endX = width - 120
self.endY = width - 25
x = self.startX
y = self.startY
i = self.startI
while i < len(self.tiles):
self.handleTile(qp,x,y,self.tiles[i])
i += 1
x += 60
if x >= self.endX - 60:
x = self.startX
y += 60
if y >= self.endY - 60:
break
return
loadTileSet
ハード ドライブからタイル データを読み取るために使用されます。handleTile
単一の正方形をペイントするために使用されます。
def handleTile(self,qp,x,y,tile):
pen = QtGui.QPen(QtCore.Qt.blue, 1, QtCore.Qt.DotLine)
for line in tile:
r,g,b,a = tile[line]
clr = QtGui.QColor(r,g,b,a)
pen.setColor(clr)
qp.setPen(pen)
pX = x + line[0]
pY = y + line[1]
qp.drawPoint(pX,pY)
では、タイルの描画を妨げているのは何ですか?