当前位置: 首页 > news >正文

哪些网站可以做微信支付京津冀协同发展心得体会

哪些网站可以做微信支付,京津冀协同发展心得体会,源码网棋牌,iis中的网站启动不了引言 此文用于记录按下鼠标左键不放#xff0c;拖动文件到程序中打开。该示例中只设置了可以拖动的文件类型为.h,.cpp,.txt这三种文件类型。 程序运行的效果#xff1a; 示例 下面是具体的实现。 项目的结构#xff1a; 具体的实现代码#xff0c;如下#xff1a; mai…引言 此文用于记录按下鼠标左键不放拖动文件到程序中打开。该示例中只设置了可以拖动的文件类型为.h,.cpp,.txt这三种文件类型。 程序运行的效果 示例 下面是具体的实现。 项目的结构 具体的实现代码如下 main.cpp #include dialog.h#include QApplicationint main(int argc, char *argv[]) {QApplication a(argc, argv);Dialog w;w.show();return a.exec(); }dialog.h #ifndef DIALOG_H #define DIALOG_H#include QDialog/********************************************功能描述1.实现文件的拖拽打开。 ********************************************/QT_BEGIN_NAMESPACE namespace Ui { class Dialog; } QT_END_NAMESPACEclass Dialog : public QDialog {Q_OBJECTpublic:Dialog(QWidget *parent nullptr);~Dialog(); protected:void dragEnterEvent(QDragEnterEvent *event);//拖拽进入void dropEvent(QDropEvent *event);//释放拖拽的文件QString GetCorrectUnicode(const QByteArray ba);//返回ba的UTF-8编码的QString字符串 private:Ui::Dialog *ui; }; #endif // DIALOG_Hdialog.cpp #include dialog.h #include ui_dialog.h #include QDragEnterEvent #include QMimeData #include QFile #include QTextCodec #include QDebugDialog::Dialog(QWidget *parent): QDialog(parent), ui(new Ui::Dialog) {ui-setupUi(this);setAcceptDrops(true);ui-textEdit-setAcceptDrops(false);//设置不接收拖拽事件否则会进入该子控件的拖拽事件中 }Dialog::~Dialog() {delete ui; }void Dialog::dragEnterEvent(QDragEnterEvent *event) {if (event-mimeData()-hasUrls()) {event-acceptProposedAction();}else {event-ignore();} }void Dialog::dropEvent(QDropEvent *event) {if (event-mimeData()-hasUrls() (event-mimeData()-urls()[0].fileName().right(3).compare(cpp) 0|| event-mimeData()-urls()[0].fileName().right(3).compare(txt) 0|| event-mimeData()-urls()[0].fileName().right(1).compare(h) 0)) {const QListQUrl urls event-mimeData()-urls();QString filePath urls.at(0).toLocalFile();QFile file(filePath);if (file.open(QIODevice::ReadOnly)) {QByteArray byteArray file.readAll();QString strContent GetCorrectUnicode(byteArray);//返回utf-8编码的字符串QString // QString strContent QString::fromLocal8Bit(byteArray).toUtf8();//当文件的编码格式为GB2312编码采用这种方式不乱码 // QString strContent byteArray;//当文件本身的编码格式为utf-8时采用这种方式不乱码ui-textEdit-setText(strContent);}else {qDebug()QStringLiteral(文件)filePathQStringLiteral(打不开);}} }QString Dialog::GetCorrectUnicode(const QByteArray ba) {QTextCodec::ConverterState state;QTextCodec *codec QTextCodec::codecForName(UTF-8);codec-toUnicode( ba.constData(), ba.size(), state);if (state.invalidChars 0){return QTextCodec::codecForName( GBK )-toUnicode(ba);}else{return ba;} }ui文件的结构 以上便是文件拖拽打开的实现。 值得注意的是 1.文件txt,.cpp,.h可能会以不同的编码格式保存这里函数GetCorrectUnicode(const QByteArray ba)可以将字符串转换为Utf-8编码的QString字符串。所以无论是那种格式应该都可以正常的拖拽加载到显示文本中。 2.对于单一的编码格式保存的文件可以单一处理。当文件的编码格式为utf-8时可以直接将从文件中读取的内容设置到显示文本。如 QByteArray byteArray file.readAll();QString strContent byteArray;//当文件本身的编码格式为utf-8时采用这种方式含中文不乱码。当文件保存的编码格式为gb2312时这时可以这样处理 QByteArray byteArray file.readAll(); QString strContent QString::fromLocal8Bit(byteArray).toUtf8();//当文件的编码格式为GB2312编码采用这种方式不乱码可以看出还是采用将编码格式统一转换为utf-8比较方便这样就不用区分文件保存时的编码格式了。 3.对于文件拖拽首先改类必须能够接收拖拽也就是必须在构造函数中设置setAcceptDrops(true);其次改类的子控件必须设置为不接受拖拽这样当事件到来的时候改类被重写的拖拽事件便会去处理。如果子控件没有设置不接受拖拽那么拖拽事件会直接在子控件的拖拽事件中处理。
http://www.pierceye.com/news/540428/

相关文章:

  • 河南网站制作团队湖南网址大全
  • 2019为网站网站做代理被判缓刑网站信息化建设建议
  • 部署推进网站建设网站域名费用
  • 企业信息门户网站建设方案seo网站模版
  • 谷歌有做网站建设快速建站哪里好
  • 坤和建设 网站深圳高端网站设计开发
  • 怎么做网站策划的模板如何注册咨询公司
  • 做婚恋网站投入多少钱php注册网站源码带数据库
  • 苏州网站建设制作方案手机上做app的软件
  • 青岛营销型网站html网页制作期末作业
  • 加强网站微信公众号平台建设php 5.4 wordpress
  • 比价网站开发东莞微客巴巴做网站
  • 怎么免费搭建自己的网站交互网站建设
  • 网站架构 规划考研网站做刷词
  • 昆山网站建设kshuituo适合seo优化的站点
  • 免费十八种禁用网站圣诞网站怎么做
  • 做网站排名赚钱吗安卓开发快速入门
  • 南宁百度网站建设求个网站或者软件
  • 岳阳网站项目建设报道网站建设色调的
  • 站长平台怎么添加网站南京市高淳县建设厅网站
  • 广州市住房和城乡建设厅网站首页一键制作自己的app软件
  • 设一个网站链接为安全怎么做微博内容放到wordpress
  • 好的网站设计培训学校wordpress主题 表白
  • 做网站服务器系统模板网站的建设方式与方法
  • 网站建设需要的公司市住房城乡建设部网站
  • 网站备案 厦门怎样做自己的购物网站
  • 旅行社应做哪些网站wordpress新建页面发布内容
  • 网站建设业中国宁波网天一论坛
  • 代表网站开发的logo小程序制作推广费用
  • 建个大型网站要多少钱怎么建自己的网址