python没有tkinter_python tkinter练习(做个画布,但是看不出什么)

本来想做个小游戏的。但是不太熟悉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="黑方下棋")

# 重来跟开始的效果一样

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)  ###感觉这里把人家的窗口分了一条出来。但是没有具体定位啊

self.f_header.pack(fill=BOTH, ipadx=10)

self.b_start = Button(self.f_header, text="开始", command=self.bf_start, font=self.btn_font)

self.b_restart = Button(self.f_header, text="重来", 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()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值