qt图片数据库
A. qt怎样创建数据库以及数据库的操作
qt可以实现连接各种数据库,这里介绍qt自带的一种数据库(Qsqlite)
#include<QSqlQuery>
#include<QObject>
#include<QVariantList>
#include<QDebug>
#include<QSqlError>
#include<QTextCodec>
#include<QObject>
staticboolcreateConnection()
{QSqlDatabasedb=QSqlDatabase::addDatabase("QSQLITE");
db.setDatabaseName("mytest.db");
if(!db.open())
returnfalse;
QSqlQueryquery;
//query.exec(QObject::tr("createtablestudent(idintprimarykey,namevchar)"));
//query.exec(QObject::tr("insertintostudentvalues(0,'刘')"));
////query.exec(QObject::tr("insertintostudentvalues(1,'刚')"));
//query.exec(QObject::tr("insertintostudentvalues(2,'红')"));
//query.prepare("insertintostudentvalues(?,?)");
//-------------------------------------------------------
//通过下面这段代码可以实现向数据库插入变量
//--------------------------------------------------------
QVariantListages;
intx1,x2,x3,x4;
x1=12;
x2=13;
x3=14;
x4=15;
ages<<x1<<x2<<x3<<x4;
query.addBindValue(ages);
QVariantListnames;
names<<QObject::tr("小王")<<QObject::tr("小明")<<QObject::tr("小张")<<QObject::tr("小新");//如果要提交空串,用QVariant(QVariant::String)代替名字
query.addBindValue(names);
if(!query.execBatch())//进行批处理,如果出错就输出错误
qDebug()<<query.lastError();
returntrue;
}
#endif//DATABASE_H
然后用QSqlTableModel实现数据库数据显示
B. qt里如何让数据库里的数据在 label中显示
px solid green;
border-radius: 4px;
padding: 2px;
background-image: url(images/xxx.png);
}
请确认一下你的 style sheet 代码是不是与上面类似的(主要看最后一行);
如果你改变了图片或者qrc文件中的内容,最好将整个工程重新都重新编译一次。再看能不能显示图片。如果还不能显示图片,就直接用QLabel的
void setPixmap ( const QPixmap & )
方法来设置图片算了。
C. QT 简单数据库操作
看你的create语句中time varchar(20)),..这边多了一个 ) ,可能导致建的表中实际只有两个字段:id和time。
然后你又插入了4个字段,所以参数个数错误。。
D. Qt加载图片资源库
用rcc。。。rcc image.qrc -o xxx.ui,然后用QResource::registerResource("xxx.ui");即可。。。用的时候,就像用qrc资源一样。这样做的好处是,编译出来的exe不会很大。
E. QT添加图片到mysql数据库
数据库存储图片名称,输出的时候添加路径就可以了。
echo "img src='./image/".$img.".jpg' alt=''";
F. 如何用Qt连接数据库并导入文件
QT 自带的数据库是很好用的。
以下给一些我写的例子:
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE"); //添加数据库
db.setDatabaseName("note.db"); //创建一个note.db的文件存储数据
db.open(); //开启数据库
query = QSqlQuery(db); //获得访问数据库的query
query.exec(XXX); //执行指令(XXX为SQL指令)
db.close(); //关闭数据库
大致只要知道以上例子就OK了。一般而言会将db变量作为全局变量或者数据成员,当需要访问的时候就获取一个query就可以了。
另外,要实现所提到的功能,要好好看看QString、QStringList,这两玩意主要是临时存放数据、分割数据等作用,另外,要看QFile、QDir、QFileInfo、QTextStream,这四个主要用来读取文本数据。看看QVector或者QList等来存放读出来的数据。
另外,要实现这玩意,SQL的语句不要求精通,但是基本的Create、Insert、Select、Delete等操作要准确无误。否则出错了QT是看不出来的。QT不会检测SQL的准确性的。
再另外,在QT的编程中,C++和类都很重要,所以还是得看看。
还有不明白的话欢迎留言
G. 求一段用Qt来实现数据库读取并显示成折线图的代码
[cpp]viewplainprint?
/*************************************************
折线图绘制
author周翔
2012-8-14
对外提供接口
voidshowData(intdata);接受外部的折线数据
voidsetSingleUnitX(constint&value);设置x轴的单位像素
voidstartUpdataTimer(intmsecond);定时器更新折线图
voidstopUpdataTimer();关闭定时器
*************************************************/
#ifndefLINEGRAPHWIDGET_H
#defineLINEGRAPHWIDGET_H
#include<QWidget>
#include<QPen>
#include<QPainter>
#include<QResizeEvent>
//#include<QDebug>
#include<QTimer>
structpoint
{
intx;
inty;
};
classLineGraphWidget:publicQWidget
{
Q_OBJECT
public:
//mix和max为折线的y轴的数据范围
explicitLineGraphWidget(intmin,intmax,QWidget*parent=0);
voidsetSingleUnitX(constint&value){singleUnitX=value;}//设置x轴的一个单位占多少个像素,默认10
//支持定时器定时更新
voidstartUpdataTimer(intmsecond);
voidstopUpdataTimer();
signals:
//支持实时更新
voidnewDataCome();//有新数据到来时发出的折线图更新信号
publicslots:
/**
*@briefshowData
*@paramadress地址
*@param_data数据
*/
voidshowData(constQString&adress,int_data);//接受来之外部的数据
/**
*@briefslt_showData接受外部数据
*@paramname设备名
*@param_data数据
*/
voidslt_showData(ushortname,int_data);
protected:
voidpaintEvent(QPaintEvent*);
voidresizeEvent(QResizeEvent*e);
private:
QStringm_currentNodeAdress;//当前显示的节点的地址
ushortm_currentNodeName;//当前节点的设备名
QList<int>xList;
QList<int>yList;
intCounter;//窗口的长和宽
intwidgetX;
intwidgetY;
//折线图的显示范围
intrangeMin;
intrangeMax;
//根据窗口和范围得出的单位长,x轴,y轴
intsingleUnitX;
intsingleUnitY;
//根据窗口得出的多少个单位,x轴,y轴
intsumUnitX;
intsumUnitY;
pointbasePoint;//折线图的原点
pointxAxisEndPoint;//X轴的终点
pointyAxisEndPoint;//Y轴的终点
QTimer*timer;
voidgetSumUnitX();
voidgetSingleUnitY();
voidinitGraph();
voidflush();//数据传入的节点不是现在的当前的节点的时候,刷新画面,清除所有的值
};
H. qt如何从数据库调用图片进行显示界面lable上
先定义一个 QPixmap,在通过QPainter进行绘画。
例子如下:
QPixmap pixmap(100, 100);
QPainter paint(&pixmap);
paint.drawLine(); // drawImage 等等各种draw开头的方法。
I. linux下怎样能让QT界面与mysql数据库链接然后能调取里面的内容(图片,数据)
#include <qapplication.h> #include <qsqldatabase.h> #include <qsqlcursor.h> #include "../login.h" bool createConnections(); int main( int argc, char *argv[] ) { QApplication app( argc, argv ); if ( createConnections() ) { QSqlCursor cur( "staff" ); // 指定表/视图名称 cur.select(); // 我们将检索每一条记录 while ( cur.next() ) { qDebug( cur.value( "id" ).toString() + ": " + cur.value( "surname" ).toString() + " " + cur.value( "salary" ).toString() ); } } return 0; }
J. QT和MySQL数据库中怎么是实现储存多个变量
在我们设计和制作网站的过程中,有时把图片保存到数据库中要比存成文件的形式更加方便。PHP和MySQL这对黄金组合可以很容易的实现上述功能。在本文中,我们将会向读者介绍如何把图片保存到MySQL数据库中以及如何将数据库中的图片显示出来。