GUI编程之简单的登录界面

# -*-coding:gb2312-*-
import tkinter
from tkinter import messagebox

window = tkinter.Tk()    # 创建tkinter对象
window.title('金企鹅')    # 设置窗口的标提
window.geometry('800x400+20+0')   # 设置窗口大小 (注意字母是x) (+20代表窗口距离屏幕边框为20,+0代表窗口距离屏幕上边框为0)


def callback():
    print('你点击了显示菜单')
def callback1():
    print('你点击了退出')
# 创建一个顶级菜单窗口
menubar = tkinter.Menu(window)
# 菜单实例增加菜单项
menubar.add_command(label='显示',command=callback)
menubar.add_command(label='退出',command=callback1)
window.config(menu=menubar)   # 显示菜单

def login():
    username =entryCd1.get()  # 定义输入框中的账号
    pwd =entryCd2.get()  # 定义输入输入框中的密码
    if username == 'qin' and pwd == '123456':
        messagebox.showinfo("登录成功,欢迎开始学习")
    else:
        messagebox.showinfo("登录失败,用户名或密码错误")

# 定义一个函数,用于改变标签中的内容
def btnHelloClicked():
    labelHello.config(text='H
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
很抱歉,我是一名语言模型,无法提供GUI编程的Java代码。但是,我可以提供一个基于MVC结构的QQ登录界面的伪代码,供您参考: 1. 模型(Model) 在这个例子中,模型是指数据和业务逻辑,例如用户的账号和密码,以及验证用户登录的方法。我们可以定义一个User类,包含用户的账号和密码属性,以及一个verifyLogin()方法来验证用户的登录信息是否正确。 public class User { private String username; private String password; public User(String username, String password) { this.username = username; this.password = password; } public boolean verifyLogin() { // 将用户输入的账号和密码与数据库中的信息进行比对 // 如果匹配成功,返回true,否则返回false } } 2. 视图(View) 视图是指用户界面,包括登录界面登录失败提示界面、登录成功后的主界面、对话框界面等。我们可以使用Swing或JavaFX等GUI库来创建这些界面,例如: // 登录界面 public class LoginView extends JFrame { private JLabel usernameLabel; private JTextField usernameField; private JLabel passwordLabel; private JPasswordField passwordField; private JButton loginButton; // ... public LoginView() { // 初始化界面组件 // ... } public String getUsername() { return usernameField.getText(); } public String getPassword() { return new String(passwordField.getPassword()); } public void addLoginListener(ActionListener listener) { loginButton.addActionListener(listener); } // ... } // 登录失败提示界面 public class LoginFailView extends JFrame { private JLabel messageLabel; // ... public LoginFailView(String message) { // 初始化界面组件 // ... messageLabel.setText(message); } // ... } // 登录成功后的主界面 public class MainView extends JFrame { // ... public MainView() { // 初始化界面组件 // ... } // ... } // 对话框界面 public class DialogView extends JDialog { // ... public DialogView() { // 初始化界面组件 // ... } // ... } 3. 控制器(Controller) 控制器是指处理用户输入和输出的逻辑,例如响应登录按钮的点击事件,验证用户的登录信息,并根据结果显示相应的界面。我们可以定义一个LoginController类来实现这些逻辑。 public class LoginController { private User user; private LoginView loginView; public LoginController(User user, LoginView loginView) { this.user = user; this.loginView = loginView; this.loginView.addLoginListener(new LoginListener()); } private class LoginListener implements ActionListener { public void actionPerformed(ActionEvent e) { String username = loginView.getUsername(); String password = loginView.getPassword(); user.setUsername(username); user.setPassword(password); if (user.verifyLogin()) { // 登录成功,显示主界面 MainView mainView = new MainView(); mainView.setVisible(true); } else { // 登录失败,显示提示界面 LoginFailView failView = new LoginFailView("登录失败,请检查账号和密码是否正确。"); failView.setVisible(true); } } } } 4. 应用程序入口 最后,我们需要在主函数中实例化模型、视图和控制器,并启动应用程序。 public class Main { public static void main(String[] args) { User user = new User("", ""); // 初始化用户信息 LoginView loginView = new LoginView(); LoginController controller = new LoginController(user, loginView); loginView.setVisible(true); // 显示登录界面 } } 以上是一个简单的基于MVC结构的QQ登录界面的伪代码示例,希望能对您有所帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值