主要工具
编写工具: VSCode
编写语言: Python
项目管理: GitHub+Git
编写界面: Tkinter
初始化项目
新建一个 JianshuDownloader 文件夹
使用 VSCode 打开这个文件夹
在 GitHub 上创建 JianshuDownloader 项目, 勾选 Initialize this repository with a README, 自动创建一个 README.md 文件
在 VSCode 中菜单[终端 - 新建终端] 打开终端, 输入 Git init 初始化项目
Git config --global user.name "zhyuzh"
命令设置你的任意名字
Git config --global user.email "zhyuzh3d@hotmail.com"
命令设置任意你的邮箱
Git remote add origin https://username:password@GitHub.com/zhyuzh3d/JianshuDownloader.Git
链接到你的 GitHub 项目, 注意修改这里你的路径 (/zhyuzh3d), 以及你的用户名(与后面 zhyuzh3d 一致, 不是邮箱) 和密码
Git pull origin master
拉取远程 GitHub 项目文件, 得到 README.md 文件
在 VSCode 中新建一个 dev 文件夹用来放置代码, 文件夹内再新建一个 main.py 文件, 随便写点注释文字如 #JianshuDownloader, 保存, 如果提示 install ...lint 那就点击 install 安装, 这是安装代码提示器
在源代码管理器面板的输入处随便写点什么如初始化, 然后 Ctrl + 回车提交到本地 Git
然后从三个点的菜单选择[推送到] , 再从弹出的列表选择唯一选项, 推送到 GitHub
在 GitHub 中检查你的 JianshuDownloader 项目中是否已经新增了 dev 文件夹和 main.py 文件
如果遇到技术问题, 可以参考这两个文章:
软件技术 - 零基础搭建 Golang 的 vsCode 开发环境
[编程] VSCode 下 Git 与 GitHub 同步
测试界面
对于 Python3.x,Tkinter 已经是标准内置模块, 可以直接使用而不需要单独安装.
修改 main.py 文件, 添加以下内容进行测试:
- from tkinter import *
- from tkinter import ttk
- import random
- root = Tk()
- root.title('MyApp')
- root.resizable(width=False, height=False)
- root.config(background='#EEE')
- root.geometry('300x150')
- def gen():
- val.set(repr(random.random()))
- val = StringVar()
- val.set('3.14')
- ttk.Frame(root, height=20).grid()
- lb=ttk.Entry(root,textvariable=val).grid(row=1, column=1, pady=10, padx=10,ipady=5,sticky='nsew')
- bt = ttk.Button(root, text='Random', width=20, command=gen).grid(
- row=2, column=1, ipady=10, ipadx=10, sticky=E)
- root.mainloop()
可以用 python main.py 来运行这段代码, 也可以使用 Run Code 插件来运行, 这会弹出一个小窗口, 上面有个按钮, 点击将随机改变输入框内的数字.
几点说明:
root = Tk()是初始化界面窗口, 最后要 mainloop()启动它
root.geometry('300x150')
这个奇葩写法可以设定窗口的尺寸
def gen(): 定义了 gen 函数, 并在下面 command=gen 当按钮点击时候调用它
val = StringVar()初始化一个字符串变量, 并在 textvariable=val 动态绑定它
grid(row=2, column=1, ipady=10, ipadx=10, sticky=E)
这是添加到画面并设定位置, 按照 row-col 行列模式, ipady 和 ipadx 是内边距, sticky=E 这里的 E 是指东面右侧对齐
后续我们再深入使用 Tkinter 界面工具.
来源: http://www.jianshu.com/p/a54a5eab7e17