将带有透明bg的图像放在标签顶部

时间:2019-01-08 17:45:25

标签: python python-3.x tkinter

我正在尝试创建一个Connect 4游戏。 当用户按下列时,图像应出现在正确的位置。 但是,该图像要么显示为灰色bg,要么根本不显示。

首先,我将这些列创建为不同的标签,并通过几个操作将它们绑定,然后创建了光盘,单击鼠标时该光盘也应作为标签可见。这导致图像按应有的方式显示,但带有bg。然后我读到不可能用trans创建标签。 bg,所以我试图让整个东西像一块画布一样工作,但是绑定不起作用...

这是init方法的一部分,创建到列:

for i in range (7):
        self._cols[i] = tk.Label(self._cnv, image=self.col_img, bd=0,
                                 background="white")
    self._cols[i].image = self.col_img
    self._cols[i].pack(side=tk.LEFT)
    self._cols[i].bind("<Enter>",
                       lambda event: event.widget.configure(
                           image=self.inv_img))
    self._cols[i].bind("<Leave>",
                       lambda event: event.widget.configure(
                           image=self.col_img))
    self._cols[i].bind("<Button-1>",
                       lambda event, i=i: self._col_pressed.set(i + 1)

或者,当我尝试创建一个大画布时,它看起来像这样(我尝试以相同的方式添加绑定,但没有用):

for i in range (7):
    x=self._cnv.create_image(107*i+50,0,image = self.col_img)
        self._cnv.itemconfig(x, image = self.col_img)
 self._cnv.pack()

这是绘制光盘的方法(仍然没有找到y位置):

def add_disc(self, coor, player):
    if player == 1:
        self._player1_discs[coor] = tk.Label(image=self.harry_img)
        self._player1_discs[coor].place(x=17 + 106 * coor[1], y=250)

0 个答案:

没有答案