需要全部源码滴滴我
一:运行效果图(LoginUI,ManageUI,RegisterUI,TopupUI,Drop userUI,UsermessageUI)





二:公交卡管理系统部分源码(Log in UI,Regiser UI,Manager UI,Personal message UI)
下面展示一些 内联代码片

// A code block
var foo = 'bar';
**一 LoginUI**
import sys
import sqlite3
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import *import  registerUI,port
import  manageUI
from PyQt5.QtSql import *
import qtawesome
import serial # 导入串口包
import time # 导入时间包login_model = 0
login_carrier = 0class Thread_login(QThread):update_date = pyqtSignal() #自定义一个信号def __init__(self,parent=None,*args,**kwargs):super(Thread_login, self).__init__(parent,*args,**kwargs)def run(self):cnt = 0while True:cnt += 1self.update_date.emit()  # 发射信号time.sleep(0.05)class SignInWidget(QWidget):def __init__(self):super(SignInWidget, self).__init__()self.resize(900, 600)self.setWindowTitle("公交卡管理系统--登录界面")# 实例化子线程self.login_thread = Thread_login()# 启动线程self.login_thread.start()self.login_thread.update_date.connect(self.fetchID_login)self.setUpUI()def setUpUI(self):self.setWindowIcon(QIcon("D:/xiaohuangren"))self.Vlayout = QVBoxLayout(self)self.Hlayout1 = QHBoxLayout()self.Hlayout2 = QHBoxLayout()self.formlayout = QFormLayout()self.label1 = QLabel("卡ID: ")labelFont = QFont()labelFont.setPixelSize(18)lineEditFont = QFont()lineEditFont.setPixelSize(16)self.label1.setFont(labelFont)self.label1.setStyleSheet("color:black")self.label1.setStyleSheet("background-color:gold")self.lineEdit1 = QLineEdit()self.lineEdit1.setFixedHeight(32)self.lineEdit1.setFixedWidth(180)self.lineEdit1.setFont(lineEditFont)#self.lineEdit1.setMaxLength(10)self.formlayout.addRow(self.label1, self.lineEdit1)self.label2 = QLabel("密码: ")self.label2.setFont(labelFont)self.lineEdit2 = QLineEdit()self.label2.setStyleSheet("color:black")self.label2.setStyleSheet("background-color:gold")self.lineEdit2.setFixedHeight(32)self.lineEdit2.setFixedWidth(180)self.lineEdit2.setMaxLength(16)#self.lineEdit2.setFont(lineEditFont)self.lineEdit1.setPlaceholderText('请输入卡ID/刷卡:')self.lineEdit2.setPlaceholderText('请输入密码:')#lineedit左侧加入图标# 账户self.cardidAction = QAction(self.lineEdit1)self.cardidAction.setIcon(qtawesome.icon('fa.id-card-o', color='grey'))self.cardidAction.triggered.connect(lambda: self.selectType(self.cardidAction))self.lineEdit1.addAction(self.cardidAction, QLineEdit.LeadingPosition)# 密码self.passwordAction = QAction(self.lineEdit2)self.passwordAction.setIcon(qtawesome.icon('fa.lock', color='grey'))self.passwordAction.triggered.connect(lambda: self.selectType(self.passwordAction))self.lineEdit2.addAction(self.passwordAction, QLineEdit.LeadingPosition)passwordFont = QFont()passwordFont.setPixelSize(16)self.lineEdit2.setFont(passwordFont)self.lineEdit2.setEchoMode(QLineEdit.Password)self.formlayout.addRow(self.label2, self.lineEdit2)self.signIn = QPushButton("登 录")self.signIn.clicked.connect(self.signInCheck)self.signIn.setFixedWidth(80)self.signIn.setFixedHeight(30)self.signIn.setFont(labelFont)self.formlayout.addRow("", self.signIn)#self.register=QPushButton('注册')#self.register.setFixedWidth(80)#self.register.setFixedHeight(30)#self.register.setFont(labelFont)#self.formlayout.addRow('',self.register)self.label = QLabel("  欢迎登录公交卡管理系统!")fontlabel = QFont()fontlabel.setPixelSize(35)self.label.setFixedWidth(500)self.label.setFixedHeight(120)self.label.setFont(fontlabel)self.Hlayout1.addWidget(self.label, Qt.AlignCenter)self.widget1 = QWidget()self.widget1.setLayout(self.Hlayout1)self.widget2 = QWidget()self.widget2.setFixedWidth(300)self.widget2.setFixedHeight(150)self.widget2.setLayout(self.formlayout)self.Hlayout2.addWidget(self.widget2, Qt.AlignCenter)self.widget = QWidget()self.widget.setLayout(self.Hlayout2)self.Vlayout.addWidget(self.widget1)self.Vlayout.addWidget(self.widget, Qt.AlignTop)#给Button绑定信号#self.register.clicked.connect(self.turnregister)def fetchID_login(self):logincount = port.ser.inWaiting()if logincount != 0:recv = port.ser.read(port.ser.in_waiting).decode("gbk")  # 读出串口数据,数据采用gbk编码ID = recv[5:13]login_carrier = IDlogin_model = 1   #self.lineEdit1.setText(login_carrier)print(login_carrier)#def turnregister(self):#    self.registerui=registerUI.registerui()#   self.registerui.show()def signInCheck(self):if login_model == 0:inputcardid = self.lineEdit1.text()if login_model == 1 :inputcardid == login_carrierinputpassword = self.lineEdit2.text()if (inputcardid == "" or inputpassword == ""):print(QMessageBox.warning(self, "警告", "卡ID和密码不可为空!", QMessageBox.Yes, QMessageBox.Yes))return# 打开数据库连接db = QSqlDatabase.addDatabase("QSQLITE")db.setDatabaseName('test.db')db.open()query1 = QSqlQuery()sql1 = "SELECT * FROM userinfo WHERE CardID='%s'" % (inputcardid)query1.exec_(sql1)db.close()if (not query1.next()):print(QMessageBox.information(self, "提示", "该账号不存在!", QMessageBox.Yes, QMessageBox.Yes))else:if "C222001B" == inputcardid:if inputpassword == "123456":print(1)self.manageui = manageUI.AdminHome()self.close()self.manageui.show()else:print(QMessageBox.warning(self, "提示", "密码错误!", QMessageBox.Yes, QMessageBox.Yes))else:db = QSqlDatabase.addDatabase("QSQLITE")db.setDatabaseName('test.db')db.open()query2 = QSqlQuery()sql2 = "SELECT * FROM userinfo WHERE Password='%s'" % (inputpassword)query2.exec_(sql2)db.close()if (not query2.next()):print(QMessageBox.information(self, "提示", "密码错误!", QMessageBox.Yes, QMessageBox.Yes))else:print(QMessageBox.information(self, "提示", "您不是管理员用户,无法登录该系统!", QMessageBox.Yes, QMessageBox.Yes))return#设置背景图片def paintEvent(self, event):painter = QPainter(self)pixmap = QPixmap("D:/公交背景图片/公交车4.jpg")# 绘制窗口背景,平铺到整个窗口,随着窗口改变而改变painter.drawPixmap(self.rect(), pixmap)
if __name__ == "__main__":app = QApplication(sys.argv)app.setWindowIcon(QIcon("./images/MainWindow_1.png"))# app.setStyleSheet(qdarkstyle.load_stylesheet_pyqt5())mainMindow = SignInWidget()mainMindow.show()ersys.exit(app.exec_()**二 .RegisterUI**
import sqlite3
import sys
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import *
import qtawesome
from PyQt5.QtSql import *
import  port  #使用串口数据
import  timeregister_model = 0
register_carrier = 0class Thread_register(QThread):resiter_date = pyqtSignal() #自定义一个信号def __init__(self,parent=None,*args,**kwargs):super(Thread_register, self).__init__(parent,*args,**kwargs)def run(self):cnt = 0while True:cnt += 1self.resiter_date.emit()  # 发射信号time.sleep(0.1)class registerui(QWidget):def __init__(self):super(registerui, self).__init__()self.resize(800, 600)self.setWindowTitle("公交卡管理系统--注册界面")self.setWindowIcon(QIcon("D:/xiaohuangren"))#self.setStyleSheet(qdarkstyle.load_stylesheet_pyqt5())self.Vlayout = QVBoxLayout(self)self.Hlayout1 = QHBoxLayout()self.Hlayout2 = QHBoxLayout()self.formlayout = QFormLayout()# 实例化子线程self.register_thread = Thread_register()# 启动线程self.register_thread.start()self.register_thread.resiter_date.connect(self.fetchID_register)#为label设置字体属性labelFont = QFont()labelFont.setPixelSize(18)#设置label字体大小self.label1 = QLabel("卡ID: ")self.label1.setFont(labelFont)self.label2 = QLabel("密码: ")self.label2.setFont(labelFont)self.label3 = QLabel("姓名: ")self.label3.setFont(labelFont)self.label4 = QLabel("电话: ")self.label4.setFont(labelFont)self.label1.setStyleSheet("color:black")self.label1.setStyleSheet("background-color:gold")self.label2.setStyleSheet("color:black")self.label2.setStyleSheet("background-color:gold")self.label3.setStyleSheet("color:black")self.label3.setStyleSheet("background-color:gold")self.label4.setStyleSheet("color:black")self.label4.setStyleSheet("background-color:gold")#为lineedit设置字体属性lineEditFont = QFont()lineEditFont.setPixelSize(16)self.lineEdit1 = QLineEdit()self.lineEdit1.setFixedHeight(25)#设置高度self.lineEdit1.setFixedWidth(180)#设置宽度self.lineEdit1.setFont(lineEditFont)self.lineEdit1.setMaxLength(20)self.lineEdit2 = QLineEdit()self.lineEdit2.setFixedHeight(25)self.lineEdit2.setFixedWidth(180)self.lineEdit2.setFont(lineEditFont)self.lineEdit2.setMaxLength(16)self.lineEdit3 = QLineEdit()self.lineEdit3.setFixedHeight(25)self.lineEdit3.setFixedWidth(180)self.lineEdit3.setFont(lineEditFont)#self.lineEdit3.setMaxLength(10)self.lineEdit4 = QLineEdit()self.lineEdit4.setFixedHeight(25)self.lineEdit4.setFixedWidth(180)self.lineEdit4.setFont(lineEditFont)self.lineEdit4.setMaxLength(11)#设置控件label lineedit布局self.formlayout.addRow(self.label1, self.lineEdit1)self.formlayout.addRow(self.label2, self.lineEdit2)self.formlayout.addRow(self.label3, self.lineEdit3)self.formlayout.addRow(self.label4, self.lineEdit4)self.lineEdit1.setPlaceholderText('请输入卡ID/刷卡:')self.lineEdit2.setPlaceholderText('请输入密码:')self.lineEdit3.setPlaceholderText('请输入姓名:')self.lineEdit4.setPlaceholderText('请输入电话:')#lineedit左侧加入图标# 卡IDself.cardidAction = QAction(self.lineEdit1)self.cardidAction.setIcon(qtawesome.icon('fa.id-card-o', color='grey'))self.cardidAction.triggered.connect(lambda: self.selectType(self.cardidAction))self.lineEdit1.addAction(self.cardidAction, QLineEdit.LeadingPosition)# 密码self.passwordAction = QAction(self.lineEdit2)self.passwordAction.setIcon(qtawesome.icon('fa.lock', color='grey'))self.passwordAction.triggered.connect(lambda: self.selectType(self.passwordAction))self.lineEdit2.addAction(self.passwordAction, QLineEdit.LeadingPosition)# 姓名self.nameAction = QAction(self.lineEdit3)self.nameAction.setIcon(qtawesome.icon('fa.user', color='grey'))self.nameAction.triggered.connect(lambda: self.selectType(self.nameAction))self.lineEdit3.addAction(self.nameAction, QLineEdit.LeadingPosition)# 电话self.phoneAction = QAction(self.lineEdit4)self.phoneAction.setIcon(qtawesome.icon('fa.mobile', color='grey'))self.phoneAction.triggered.connect(lambda: self.selectType(self.phoneAction))self.lineEdit4.addAction(self.phoneAction, QLineEdit.LeadingPosition)#Hlayout1self.label = QLabel("  欢迎进入公交卡ID注册界面!")self.label.setStyleSheet("color:gold")fontlabel = QFont()fontlabel.setPixelSize(35)self.label.setFixedWidth(500)self.label.setFixedHeight(80)self.label.setFont(fontlabel)self.Hlayout1.addWidget(self.label, Qt.AlignCenter)self.widget1 = QWidget()self.widget1.setLayout(self.Hlayout1)#Hlayout2self.widget2 = QWidget()self.widget2.setFixedWidth(300)self.widget2.setFixedHeight(150)self.widget2.setLayout(self.formlayout)self.Hlayout2.addWidget(self.widget2, Qt.AlignCenter)self.widget = QWidget()self.widget.setLayout(self.Hlayout2)self.Vlayout.addWidget(self.widget1)self.Vlayout.addWidget(self.widget, Qt.AlignTop)self.register=QPushButton('注册')self.register.clicked.connect(self.registercheck)self.register.setFixedWidth(60)self.register.setFixedHeight(30)self.register.setFont(labelFont)self.formlayout.addRow('',self.register)def fetchID_register(self):count_resigter = port.ser.inWaiting()if count_resigter != 0:register_model = 1  #recv = port.ser.read(port.ser.in_waiting).decode("gbk")  # 读出串口数据,数据采用gbk编码ID = recv[5:13]register_carrier = IDself.lineEdit1.setText(register_carrier)print(ID)def paintEvent(self, event):painter = QPainter(self)pixmap = QPixmap("D:/公交背景图片/上海公交卡1.jpg")# 绘制窗口背景,平铺到整个窗口,随着窗口改变而改变painter.drawPixmap(self.rect(), pixmap)def registercheck(self):if register_model == 0:inputcardid = self.lineEdit1.text()if register_model == 1 :inputcardid = register_carrierinputpassword = self.lineEdit2.text()inputname = self.lineEdit3.text()inputphone = self.lineEdit4.text()if (inputcardid == "" or inputpassword == "" or inputname == "" or inputphone== ""):print(QMessageBox.warning(self, "警告", "表单不可为空,请重新输入", QMessageBox.Yes, QMessageBox.Yes))returnelse:  # 需要处理逻辑,1.账号已存在;2.密码不匹配;3.插入user表db = QSqlDatabase.addDatabase("QSQLITE")db.setDatabaseName('test.db')#如果该工程下有则连接 没有就创建db.open()#打开query = QSqlQuery()sql = "SELECT * FROM userinfo WHERE CardID='%s'" % inputcardidquery.exec_(sql)if (query.next()):print(QMessageBox.warning(self, "警告", "该账号已存在,请重新输入", QMessageBox.Yes, QMessageBox.Yes))self.lineEdit1.clear()self.lineEdit2.clear()self.lineEdit3.clear()self.lineEdit4.clear()returnelse:sql = "INSERT INTO userinfo VALUES ('%s','%s','%s','%s','%s')" % (inputcardid, inputpassword, inputname,inputphone,0)db.exec_(sql)#执行sql语句db.commit()#提交数据print(QMessageBox.information(self, "提醒", "您已成功注册账号!", QMessageBox.Yes, QMessageBox.Yes))db.close()#关闭数据库连接returnif __name__ == "__main__":app = QApplication(sys.argv)app.setWindowIcon(QIcon("./images/MainWindow_1.png"))mainMindow = registerui()mainMindow.show()sys.exit(app.exec_())三.ManagerUI
import sys
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import *
import personalMessageUI
import registerUI
import topupUI
import DropuserUIclass AdminHome(QWidget):def __init__(self):super().__init__()self.setUpUI()def setUpUI(self):self.resize(900, 600)self.setWindowTitle("公交卡管理系统--管理员界面")self.setWindowIcon(QIcon("D:/xiaohuangren"))self.layout = QHBoxLayout()self.buttonlayout = QVBoxLayout()self.setLayout(self.layout)font = QFont()font.setPixelSize(16)self.usermessageButton = QPushButton("用户信息")self.adduserButton = QPushButton("办理新卡")self.dropuserButton = QPushButton("删除旧卡")self.topupButton = QPushButton("充值")self.usermessageButton.setFont(font)self.adduserButton.setFont(font)self.dropuserButton.setFont(font)self.topupButton.setFont(font)self.usermessageButton.setFixedWidth(100)self.usermessageButton.setFixedHeight(42)self.topupButton.setFixedWidth(100)self.topupButton.setFixedHeight(42)self.adduserButton.setFixedWidth(100)self.adduserButton.setFixedHeight(42)self.dropuserButton.setFixedWidth(100)self.dropuserButton.setFixedHeight(42)self.buttonlayout.addWidget(self.adduserButton)self.buttonlayout.addWidget(self.dropuserButton)self.buttonlayout.addWidget(self.usermessageButton)self.buttonlayout.addWidget(self.topupButton)self.layout.addLayout(self.buttonlayout)#        self.layout.addWidget(self.storageView)self.adduserButton.clicked.connect(self.onclickedaddueser)self.usermessageButton.clicked.connect(self.userMessage)self.topupButton.clicked.connect(self.onclickedtopui)self.dropuserButton.clicked.connect(self.onclickeddropuser)def userMessage(self):self.usermessageUI = personalMessageUI.Personalmessageui()self.usermessageUI.show()#self.usermessageUI.writedata()def onclickedaddueser(self):self.register1=registerUI.registerui()self.register1.show()def paintEvent(self, event):painter = QPainter(self)pixmap = QPixmap("D:/公交背景图片/背景3.jpg")# 绘制窗口背景,平铺到整个窗口,随着窗口改变而改变painter.drawPixmap(self.rect(), pixmap)def onclickedtopui(self):self.close()self.topupui=topupUI.TopupWidget()self.topupui.show()def onclickeddropuser(self):self.close()self.dropuserui=DropuserUI.DropuserWidget()self.dropuserui.show()if __name__ == "__main__":app = QApplication(sys.argv)app.setWindowIcon(QIcon("./images/MainWindow_1.png"))#app.setStyleSheet(qdarkstyle.load_stylesheet_pyqt5())mainMindow = AdminHome()mainMindow.show()sys.exit(app.exec_())
四.Personale message UI
import sqlite3
import sys
import qdarkstyle
import time
from PyQt5.Qt import *class ThreadTable(QThread):update_date = pyqtSignal() #自定义一个信号def __init__(self,parent=None,*args,**kwargs):super(ThreadTable, self).__init__(parent,*args,**kwargs)def run(self):cnt = 0while True:cnt += 1self.update_date.emit()  # 发射信号time.sleep(0.5)
class Personalmessageui(QWidget):def __init__(self, arg=None):super(Personalmessageui, self).__init__(arg)self.setWindowTitle("公交卡管理系统--用户信息")self.resize(700, 400)self.setStyleSheet(qdarkstyle.load_stylesheet_pyqt5())self.setWindowIcon(QIcon("D:/xiaohuangren"))# 实例化子线程self.table_thread = ThreadTable()# 启动线程self.table_thread.start()self.table_thread.update_date.connect(self.table_data_update)self.setUpUI()def setUpUI(self):#创建一个垂直布局盒子layout = QVBoxLayout()#设置布局self.setLayout(layout)# 4行4列self.model = QStandardItemModel(100, 4)# 设置表头self.model.setHorizontalHeaderLabels(['CardID','Password', 'name', 'phone', 'Balance(元)'])self.tableview = QTableView()#添加控件tableview到layout布局中layout.addWidget(self.tableview)# 列宽自适应充满表格self.tableview.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch)# 关联QTableView控件和Modelself.tableview.setModel(self.model)self.tableview.setEditTriggers(QAbstractItemView.NoEditTriggers)#设置tableview可选中不可编辑self.tableview.move(20, 20)#self.tableview.setSelectionBehavior(QAbstractItemView.SelectRows)self.writedata()def writedata(self):cn = sqlite3.connect('test.db')cur = cn.cursor()cur.execute("Select * From userinfo")data = cur.fetchall()lens = len(data)# 将数据库中表userinfo中的信息添加到tableview中显示for i in range(lens):item_CardID = QStandardItem(str(data[i][0]))item_Password = QStandardItem(data[i][1])item_Name = QStandardItem(data[i][2])item_Phone = QStandardItem(str(data[i][3]))item_Balance = QStandardItem(str(data[i][4]))self.model.setItem(i, 0, item_CardID)  self.model.setItem(i, 1, item_Password)self.model.setItem(i, 2, item_Name)self.model.setItem(i, 3, item_Phone)self.model.setItem(i, 4, item_Balance)cur.close()cn.close()def table_data_update(self):count = self.model.rowCount()self.model.removeRows(0,count)self.writedata()
"""def paintEvent(self, event):painter = QPainter(self)pixmap = QPixmap("D:/公交背景图片/纯色背景1.jpg")# 绘制窗口背景,平铺到整个窗口,随着窗口改变而改变painter.drawPixmap(self.rect(), pixmap)
"""
if __name__ == '__main__':app = QApplication(sys.argv)app.setWindowIcon(QIcon("./images/MainWindow_1.png"))#app.setStyleSheet(qdarkstyle.load_stylesheet_pyqt5())table = Personalmessageui()#table.setObjectName("MainWindow")#table.setStyleSheet("#MainWindow{background-color:green}")table.show()sys.exit(app.exec_())

Python 、Sqlite3数据库、单片机 、RC522 -公交卡管理系统(含部分源码)#可刷卡登陆相关推荐

  1. Python编程:打造太空入侵者游戏(含完整源码)

    Python编程:打造太空入侵者游戏(含完整源码) 太空入侵者这款游戏经典得让人不能忘怀,而Python语言的简单易学.快速开发的特性,使其成为实现该游戏的最好选择.在本篇文章中,我们将为读者呈现如何 ...

  2. 基于JavaWeb Mybatis+MVC(JSP + servlet + javabean)的高校就业管理系统(含项目源码)

    基于JavaWeb Mybatis+MVC的高校就业管理系统 项目简介 基本功能简介 项目要求 概要设计 数据模型(E-R图) 数据库结构设计 主要页面展示 项目实现 创建项目 项目结构展示 项目关键 ...

  3. Python(Tkinter)+Mysql 交通违章管理系统(附源码)

    数据库课程设计. 交通违章管理系统, 实现对车辆.司机.警察.违章及处罚等信息增加.删除.修改.查询,并能够查询和显示出交通违章通知等信息. 涉及:python.tkinter.mysql .pymy ...

  4. Python+Vue计算机毕业设计体检预约平台管理系统22gqf(源码+程序+LW+部署)

    该项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 项目运行环境配置: Python3.7.7+Django+Mysql5.7+pip list+HBuilderX(Vscode也行)+V ...

  5. Python+Vue计算机毕业设计荆楚理工学院竞赛管理系统tdt21(源码+程序+LW+部署)

    该项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 项目运行环境配置: Python3.7.7+Django+Mysql5.7+pip list+HBuilderX(Vscode也行)+V ...

  6. Python+Vue计算机毕业设计今夕摄影影楼管理系统zll3c(源码+程序+LW+部署)

    该项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 项目运行环境配置: Python3.7.7+Django+Mysql5.7+pip list+HBuilderX(Vscode也行)+V ...

  7. Python+Vue计算机毕业设计小区停车信息管理系统u4mty(源码+程序+LW+部署)

    该项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 项目运行环境配置: Python3.7.7+Django+Mysql5.7+pip list+HBuilderX(Vscode也行)+V ...

  8. java毕业设计物流信息管理系统录像演示源码+lw文档+mybatis+系统+mysql数据库+调试

    java毕业设计物流信息管理系统录像演示源码+lw文档+mybatis+系统+mysql数据库+调试 java毕业设计物流信息管理系统录像演示源码+lw文档+mybatis+系统+mysql数据库+调 ...

  9. JAVA毕业设计公交线路查询系统计算机源码+lw文档+系统+调试部署+数据库

    JAVA毕业设计公交线路查询系统计算机源码+lw文档+系统+调试部署+数据库 JAVA毕业设计公交线路查询系统计算机源码+lw文档+系统+调试部署+数据库 本源码技术栈: 项目架构:B/S架构 开发语 ...

最新文章

  1. Smart Crop,一种切除 PDF 扫描文档白边的新选择(工程篇)
  2. DedeCms织梦发布文章时输入Tag标签逗号自动变成英文标点的方法
  3. AndroidStudio通过JDBC连接MySQL数据库六大巨坑
  4. 如何让文字溢出自动变成省略号
  5. 2021年3月国产数据库排行榜:雏凤声清阿里三连 绝代双骄华为合璧
  6. 2020年4月中国编程语言排行榜程序员工资统计,人工智能工资大跌
  7. java panel paint_java – 如何使用jpanel与paint(或重绘)
  8. 分享一个自己写的py扫描路径工具
  9. 引用原话,不等于原意
  10. 辽宁移动客服呼叫中心两级质检管理效果佳
  11. 数字电子技术基础(二):原码、反码、补码
  12. 计算机无法安装新字体,怎么给电脑安装新字体
  13. 学习笔记:微波遥感反演土壤水分——理论模型和经验模型(1)
  14. 刷题总结——寻宝游戏(bzoj3991 dfs序)
  15. 【自然语言处理】【实体匹配】PromptEM:用于低资源广义实体匹配的Prompt-tuning
  16. BGP高防服务器与普通高防服务器有什么区别?
  17. CPU频率,到底是什么?
  18. windows网络通讯端口
  19. 最新会声会影2023旗舰版更新了哪些功能?
  20. 05 pyecharts 基本图表(示例代码+效果图)

热门文章

  1. Python_pygame库学习笔记(1):pygame的由来,特点以及模块简介
  2. 内蒙古邮政计算机考试题目,内蒙古邮政储蓄笔试
  3. 【ros学习】14.urdf、xacro机器人建模与rviz、gazebo仿真详解
  4. rem等于多少px?
  5. 四面快手、终拿Offer,想告诉你的一些事情
  6. 计算机网络(2)传输层
  7. 不用sqrt()函数,求平方根的三种方法
  8. // 程序员面试宝典第三版34页,面试题2 ,结果很诡异,指针类型的转换本来意味着指向数据类型的转换,但是似乎不尽然是。
  9. 静电耳机与普通动圈或动铁耳机有什么区别
  10. java 多字段搜索_Elasticsearch系列---多字段搜索