qt杂谈
文章平均质量分 65
leftover_crazy
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
QT中窗口如何隐藏最大话按钮 和设置背景图片
LoginDialog w; w.setWindowFlags((Qt::WindowCloseButtonHint)&(Qt::WindowMinimizeButtonHint)); w.setMinimumSize(500,300); w.setMaximumSize(500,300); w.show();原创 2010-07-17 21:27:00 · 2817 阅读 · 1 评论 -
QSqlDatabase 使用小结,解决部分数据库操作导致程序崩溃的办法
这两天都在为 QSqlDatabase 类头疼 因为涉及多个连接 连接到同一个数据库 而又没有对各个连接设置名称 网上大部分简易教程都是采用默认数据库连接名称 这样就会导致在对其中一个数据库连接进行操作时 影响到其它数据连接的操作(其实本质上他们是同一个连接) 因为我采用多文档窗体在各个窗体处理不同的数据连接 所以移除或者改变一个连接 也会导致其它连接跟着受到影响 直接导致了程序假死崩溃 本来毫无头绪 不知道个所以然 参照前辈的文章来写程序 也原创 2010-08-04 16:18:00 · 9903 阅读 · 1 评论 -
QSqlDatabase 与多文档窗口注意事项(此文有部分错误 仅作留档 请参见下一篇解释)
当多文档窗口中有多个子窗口同时显示,而这几个子窗口又同时连接同一个数据库时,如果在子窗口的析构函数中使用void QSqlDatabase::close ()或者void QSqlDatabase::removeDatabase ( const QString & connectionName ) [static]此时会发现当关闭其中一个子窗口时正常 当关闭第二个子窗口时程序将崩溃原因是第一个窗口关闭了数据库连接,或者移除了数据库,而第二个窗口关闭时又要关闭此连接,或者移除此数据库,而此时此链接或者原创 2010-08-04 04:09:00 · 1113 阅读 · 0 评论 -
QSqlDatabase 数据库操作没有removeDatabase 导致程序崩溃(此文极有可能是错误的,仅作个人留档参考)
void QSqlDatabase::removeDatabase ( const QString & connectionName ) [static]Removes the database connection connectionName from the list of database connections.Warning: There should be no open queries on the database connection when this function原创 2010-08-02 22:54:00 · 4704 阅读 · 0 评论 -
QTabWidget bug导致程序崩溃
<br />QTabWidget 使用的时候如果读取的数据不存在 或者读取的数据项在setitem的时候没有写入数据,则程序会崩溃<br />比如:<br />//ui->tableWidget->setItem(row,0,new QTableWidgetItem(tr("***")+ui->comboBox_6->currentText().trimmed()+tr("***")+ui->tableWidget->item(currentrow,0)->text())); ui原创 2010-07-31 02:58:00 · 3565 阅读 · 0 评论 -
QSqlQuery插入数据操作实例,包含批处理代码
<br />void KaiDanWnd::on_action_4_triggered(){ if(ui->lineEdit->text()==tr("")) { QMessageBox::about(this,tr("数据填写不完整"),tr("客户姓名未填写")); return; } if(ui->lineEdit_3->text()==tr("")) { QMessageBox::about(原创 2010-08-02 02:39:00 · 6869 阅读 · 4 评论 -
qt右键菜单的简单实例 ContextMenu
enum ContextMenuPolicy { NoContextMenu, DefaultContextMenu, ActionsContextMenu, CustomContextMenu, PreventContextMenu };void TextWnd::on_tableView_customContextMenuRequested(QPoint pos){ Q原创 2010-07-27 21:34:00 · 4678 阅读 · 0 评论 -
qt 程序发布以及中文翻译的方法
<br />程序发布的话非静态编译 必须带上所有的dll动态连接库<br />没有带上动态链接库的话 程序运行时会提示缺少XXX.dll<br />只要在qt安装目录内找到相应的dll复制到exe程序所在目录内就可以了<br />譬如我现在windows下的qt安装在C:/Qt/2010.04 提示缺少QtCore4.dll QtGui4.dll QtSql4.dll libgcc_s_dw2-1.dll 这四个连接库 <br />则只需要将C:/Qt/2010.04/qt/b原创 2010-07-28 23:52:00 · 1629 阅读 · 0 评论 -
qt model和view的table 小记
QT中的model和view都是采用index索引 index含有两个成员变量一个是row 一个是column 对应该索引的行号列号model提供数据 view提供视图 view用来显示model的数据 必须将model绑定到某个view中才能显示 ui->tableView->setModel(model);ui->tableView->currentIndex();//获取选中单元格的indexui->tableView->currentIndex().column();//原创 2010-07-28 02:01:00 · 4779 阅读 · 0 评论 -
一个夭折 脱裤子放屁的QSql Sqlite操作类
<br />本来想自己封装一下Sqlite操作类 写到一半才发现是脱裤子放屁 多此一举了 <br />自己写的东西还没有Qt用起来简洁 唯一的好处估计就是能在整个工程里对同一个数据库进行操作 能通过QDir查找指定目录下的数据库文件 绑定到combobox让用户手动选择操作的数据库 有空再添加以下数据库的备份函数 其实思路也就是文件另存为 <br />一下代码贴出来自嘲一下 唉 <br />.h文件<br />#ifndef SQLITEDB_原创 2010-07-27 00:40:00 · 1310 阅读 · 0 评论 -
QDir对某个目录内文件名进行模糊搜索
QStringList SqliteDB::findDbfiles(){ QDir dir; dir.setPath("./DbfInUse"); dir.setFilter(QDir::Files | QDir::Hidden); dir.setSorting(QDir::Name); QStringList names = dir.entryList(); QStringList newnames; newnames=names.原创 2010-07-27 00:31:00 · 6491 阅读 · 0 评论 -
qt中获取当前登录的用户信息类的简单实现
.h文件代码如下#ifndef CSF_H#define CSF_H#include #include class csf{public: csf(); static void setUserName(QString name);//填入用户姓名 static void setlogintime(QDateTime time);//填入用户登录时间 static void setissuperuser(int i);//填入管理员权限级别原创 2010-07-25 00:31:00 · 6597 阅读 · 1 评论 -
利用QCryptographicHash 加密QString
直接上代码了 废话不多说了 这是MD4加密 可以自己更改成QCryptographicHash::Md5 或者QCryptographicHash::Sha1QString Encrypt(QString s){ QByteArray string=s.toAscii(); QCryptographicHash *hash=new QCryptographicHash(QCryptographicHash::Md4); hash->addData(string原创 2010-07-25 00:15:00 · 5910 阅读 · 3 评论 -
简单的QMessageBox显示版权信息
先说说QMessageBox::about吧void MainWindow::on_action_22_triggered(){ QMessageBox::about(this,tr("作者信息以及版权声明"),tr("晖源建材行财务管理系统 2.0""Copyright © 2010 蔡圣缝. All rights reserved.""晖源建材行财务管理系统由蔡圣锋基于QT 4.7.0独立开发完成,完全遵循LGPL协议。本软件仅允许晖源建材行免费作为商业应用,对于其它用户在未经作者允许的情原创 2010-07-21 02:00:00 · 2429 阅读 · 2 评论 -
qt中解决不同平台间编码问题以及登录窗口写法
#include #include "logindialog.h"#include "mainwindow.h"#include int main(int argc, char *argv[]){ QTextCodec *codec = QTextCodec::codecForName("utf8"); QTextCodec::setCodecForLocale(codec); QTextCodec::setCodecForCStrings(codec);原创 2010-07-18 23:59:00 · 887 阅读 · 0 评论 -
一个土鳖的时间范围查询条件写法 基于QDateEdit和sqlite的smalldatetime
<br />if(ui->dateEdit->date()>ui->dateEdit_2->date()) { QMessageBox::about(this,tr("日期范围错误"),tr("开单的起始时间不能大于开单的截止时间,请点击'确定'返回重新设置日期间隔!")); return; } QString datetime1,datetime2; datetime1=QString::number(ui->dateEdit->原创 2010-08-05 04:38:00 · 2882 阅读 · 0 评论
分享