python tkinter練習(xí)(做個(gè)畫(huà)布,但是看不出什么)
本來(lái)想做個(gè)小游戲的。但是不太熟悉tkinter怎么操控圖形界面。
所以拿了別人的程序看了一下。
# -*- coding: utf-8 -*-
"""
Created on Sat Mar ?7 14:09:18 2020
@author: liyan
"""
from tkinter import *
from tkinter.messagebox import *
class Chess(object):
??
? ? def bf_start(self):
? ? ? ? self.set_btn_state("start")
? ? ? ? self.is_start = True
? ? ? ? self.is_black = True
? ? ? ? self.matrix = [[0 for y in range(self.column)] for x in range(self.row)]
? ? ? ? self.draw_board()
? ? ? ? self.l_info.config(text="黑方下棋")
??
?# 重來(lái)跟開(kāi)始的效果一樣
? ? def bf_restart(self):
? ? ? ? self.bf_start()
? ? ? ? ?
? ? def __init__(self):
? ? ? ? #############
? ? ? ? # ? param ? #
? ? ? ? #######################################
? ? ? ? self.row, self.column = 15, 15
? ? ? ? self.mesh = 25
? ? ? ? self.ratio = 0.9
? ? ? ? self.board_color = "#CDBA96"
? ? ? ? self.header_bg = "#CDC0B0"
? ? ? ? self.btn_font = ("黑體", 12, "bold")
? ? ? ? self.step = self.mesh / 2
? ? ? ? self.chess_r = self.step * self.ratio
? ? ? ? self.point_r = self.step * 0.2
? ? ? ? self.matrix = [[0 for y in range(self.column)] for x in range(self.row)]
? ? ? ? self.is_start = False
? ? ? ? self.is_black = True
? ? ? ? self.last_p = None
?
? ? ? ? ###########
? ? ? ? # ? GUI ? #
? ? ? ? #######################################
? ? ? ? self.root = Tk()
? ? ? ? self.root.title("Gobang By Young")
? ? ? ? self.root.resizable(width=False, height=False)
?
? ? ? ? self.f_header = Frame(self.root, highlightthickness=0, bg=self.header_bg) ?###感覺(jué)這里把人家的窗口分了一條出來(lái)。但是沒(méi)有具體定位啊
? ? ? ? self.f_header.pack(fill=BOTH, ipadx=10)
? ? ? ? self.b_start = Button(self.f_header, text="開(kāi)始", command=self.bf_start, font=self.btn_font)
? ? ? ? self.b_restart = Button(self.f_header, text="重來(lái)", command=self.bf_restart, state=DISABLED, font=self.btn_font)
? ? ? ??
? ? ? ? self.b_start.pack(side=LEFT, padx=20)
? ? ? ? self.b_restart.pack(side=LEFT)
? ? ? ?
?
? ? ? ? self.c_chess = Canvas(self.root, bg=self.board_color, width=(self.column + 1) * self.mesh,
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? height=(self.row + 1) * self.mesh, highlightthickness=0)
? ? ? ? self.c_chess.pack()
?
? ? ? ? self.root.mainloop()
if __name__ == '__main__':
? ? Chess()