项目笔记本
- 用.ui文件生成对应的pyqt类:
pyside6-uic mainwindow.ui > ui_mainwindow.py
-
QString("text %1").arg(num)
:"text <num>"
-
待确认
// 配合翻译包使用,一般不需要这样用 QString text1 = QObject::tr("hello"); // 老式写法(不推荐) QString text2 = QString("hello"); // 新式写法(建议写法) QString text3 = toString("hello");
-
QLabel与buddy
- QLabel可以指定buddy,当用户激活标签的快捷键的时候,鼠标或键盘的焦点会转移到伙伴窗口上
- 在文本的某个字符前添加前缀
&
即可定义快捷键 QLabel("&Age", this);
:定义的快捷键为Alt+A
-
消息框
if (!db.open()) {
QMessageBox::critical(0, "Cannot open database1",
"Unable to establish a database connection.", QMessageBox::Cancel);
return false;
}
指令 | 操作 |
---|---|
SELECT FROM [WHERE] | 从数据库中提取数据 |
SELECT DISTINCT | 提取不重复的数据 |
UPDATE | 更新数据库中的数据 |
DELETE | 从数据库中删除数据 |
INSERT INTO | 向数据库中插入新数据 |
CREATE DATABASE | 创建新数据库 |
ALTER DATABASE | 修改数据库 |
CREATE TABLE | 创建新表 |
ALTER TABLE | 变更(改变)数据库表 |
DROP TABLE | 删除表 |
CREATE INDEX | 创建索引(搜索键) |
DROP INDEX | 删除索引 |
create table automobil (
id int primary key,
attribute varchar,
type varchar,
kind varchar,
nation int,
carnumber int,
elevaltor int,
distance int,
oil int,
temperature int)
-
QSqlDatabase db = QSqlDatabase("QSQLITE")
QTextCodec::setCodecForLocale // 设置中文显示 (QTextCodec::codecForLocale()); // 添加SQLite类型的数据库,驱动为QSQLITE db = QSqlDatabase::addDatabase("QSQLITE"); // 主机名 db.setHostName("Vorrad-PC"); // 唯一可用的数据库名 db.setDatabaseName("qtDB.db"); // 用户名 db.setUserName("Vorrad"); // 密码 db.setPassword("12345678"); // 打开连接 db.open();
-
QSqlQuery query
QSqlQueryModel
QSqlTableModel
QSqlRelationTableModel
-
bool success = query.exec("...")
-
query.prepare("...")
query.bindValue(i,<value>)
-
文档必须有根元素
-
默认声明
<?xml version="1.0" encoding="utf-8"?>
(首行) -
大小写敏感
-
属性值需要加引号
-
实体引用
实体引用 符号 < < > > & & ' ' " " -
注释
<!-- This is a comment -->
-
用换行符LF存储换行(
\n
) -
不同于HTML,XML中应尽量避免使用属性
-
query = QSqlQuery(db);//要这么链接数据库才能用
-
用多行字符串写SQL语句时,注意末尾空格!!!
-
程序对数据库操作时,SQLStudio需要先断开和数据库的连接
-
db = QSqlDatabase::addDatabase("QSQLITE");
可行db.addDatabase("QSQLITE");
无法加载驱动