今天完成了课设的第一部分,登陆注册页面
先附上参考的博客和官方文档
tkinter:官方文档
cx_oracle:官方文档
页面登陆参照:参照博客链接
pack函数理解:函数链接
界面有点丑,但是大致的样子做出来了,就先这样吧
记录下我遇见的问题
1.在用Pycharm使用insert语句插入Oracle数据时,程序开始未响应,而使用jupyter notebook时则可以正常插入
原因:我在pycharm上运行整个程序,在jupyter notebook上调试函数,而没有在调试后将数据库链接关闭,导致数据库被占用,无法插入,在jupyter notebook上似乎要commit数据才插入到数据库中,而pycharm只要插入,似乎就已经提交到了数据库
2.在我使用imagefile=tk.PhotoImage(file=‘qm.png’)时,控制台提示该图片无法识别
原因:在Tk里 图片似乎只能使用gif版本,见tk背景图博客解释因为只是课设用一下,对此不是很感兴趣,所以没有去深究,如果有同学知道,可以评论区说说
具体代码
mainwindow.py
import tkinter as tk
import tkinter.messagebox
import pickle
import oracle_connect
import cx_Oracle as cs
from PIL import ImageTk, Image
# 数据库对象
con = oracle_connect
# 窗口
window = tk.Tk()
window.title('你好')
window.geometry('450x300')
# 画布布置图片
canvas = tk.Canvas(window,height=300,width=500)
imgpath='background.gif'
img = Image.open(imgpath)
photo = ImageTk.PhotoImage(img)
# img_src = tk.PhotoImage(file='background.gif')
image = canvas.create_image(0,0,image=photo)
canvas.pack(side='left')
# 标签 用户名密码
tk.Label(window,text='UserName:').place(x=100,y=150)
tk.Label(window,text='password:').place(x=100,y=190)