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

大型网站建立动漫专业就业前景

大型网站建立,动漫专业就业前景,搜索引擎营销的特点有,宁波论坛招聘最新消息0x00 引言 本文将详细讲解如何使用Qt实现一个多文本编辑器。涉及的话题包括#xff1a;Qt框架基础、窗体布局、文本编辑、拓展功能等等。 在阅读本文之前#xff0c;你需要掌握基本的C编程知识和Qt框架的使用方法。 0x01 新建Qt项目 在Qt Creator中#xff0c;新建一个Q…0x00 引言 本文将详细讲解如何使用Qt实现一个多文本编辑器。涉及的话题包括Qt框架基础、窗体布局、文本编辑、拓展功能等等。 在阅读本文之前你需要掌握基本的C编程知识和Qt框架的使用方法。 0x01 新建Qt项目 在Qt Creator中新建一个Qt Widgets Application选取项目名称和路径后直接点击下一步。 在下一个页面根据自己的需要选取要使用的Qt版本建议选取较新的版本以兼容更多的功能。接下来勾选要使用的模块这个项目中需要用到Qt Widgets和Qt Gui两个模块。 最后点击生成按钮完成新建项目的过程。 0x02 窗口布局 在Qt中可以使用设计师来定制各种控件的布局但这里我们将采用手动编写代码的方式实现窗口布局。 在代码中创建一个继承自QWidget的MyWidget类。在这个类中实现窗口的各种控件例如菜单栏、文本框、标签、按钮等等。 示例代码 class MyWidget : public QWidget {Q_OBJECTpublic:MyWidget(QWidget *parent nullptr);~MyWidget();private:QLabel *label;QTextEdit *text_edit;QPushButton *button;void init();void init_layout();void init_connections(); }; 对于界面的布局和控件的设置我们可以在init()函数中进行操作。具体实现如下 老舅推荐CQt项目教程视频代码Qt实战-word文档编辑器软件 Qt-MP3音乐播放器搜索引擎项目 如果你正在挑战Qt开发岗位 这里的每一个项目都能征服你的面试leader斩获满意offer。 void MyWidget::init() {label new QLabel(文本编辑器, this);text_edit new QTextEdit(this);button new QPushButton(保存, this);init_layout();init_connections(); }void MyWidget::init_layout() {QVBoxLayout *main_layout new QVBoxLayout(this);main_layout-addWidget(label);main_layout-addWidget(text_edit);main_layout-addWidget(button); } 在这里我们使用QVBoxLayout、QHBoxLayout等布局管理器来实现控件的布局和排列。 0x03 文本编辑 在多文本编辑器中文本编辑是重中之重。使用Qt可以非常简单地实现文本编辑功能。在MyWidget类的init()函数中通过new关键字创建一个QTextEdit对象以实现文本编辑。 text_edit new QTextEdit(this);在文本编辑的使用过程中我们需要掌握QTextEdit对象的各种方法。 例如设置文本内容 text_edit-setText(hello world.);设置文本样式 QFont font(Times, 16, QFont::Bold); text_edit-setFont(font); 获取文本内容 QString text text_edit-toPlainText(); 保存文本内容 QString filename QFileDialog::getSaveFileName(this, tr(保存文件), , tr(文本文件 (*.txt)));if (!filename.isNull()) {QFile file(filename);if (!file.open(QIODevice::WriteOnly | QIODevice::Text)) {QMessageBox::warning(this, tr(警告), tr(无法保存文件) filename, QMessageBox::Ok);}QTextStream out(file);out text_edit-toPlainText(); }更多QTextEdit的方法可以在Qt的官方文档中查看。 0x04 拓展功能 在多文本编辑器中除了基本的文本编辑功能还需要拓展一些常用的功能如新建、打开、保存、撤销、重做等等。 我们在MyWidget类的init()函数中创建QPushButton对象并在init_connections()中实现各种按钮的操作。 例如打开文件 void MyWidget::on_open_button_clicked() {QString filename QFileDialog::getOpenFileName(this, tr(打开文件), , tr(文本文件 (*.txt)));if (!filename.isNull()) {QFile file(filename);if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) {QMessageBox::warning(this, tr(警告), tr(无法打开文件) filename, QMessageBox::Ok);}QTextStream in(file);text_edit-setText(in.readAll());} }更多拓展功能的代码可以在Qt之家的项目源码中查看。 0x05 总结 在本文中我们通过实例演示了如何使用Qt框架创建一个多文本编辑器。其中包括了新建Qt项目、窗口布局、文本编辑、拓展功能等多个方面。 在实际开发过程中我们可以根据需求来拓展自己的功能例如实现搜索、替换、拷贝、粘贴、恢复、查找等功能以达到更好的使用体验。 示例1使用QFileDialog类创建打开、保存文件的功能 void MyWidget::on_open_button_clicked() {QString filename QFileDialog::getOpenFileName(this, tr(打开文件), , tr(文本文件 (*.txt)));if (!filename.isNull()) {QFile file(filename);if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) {QMessageBox::warning(this, tr(警告), tr(无法打开文件) filename, QMessageBox::Ok);}QTextStream in(file);text_edit-setText(in.readAll());} }void MyWidget::on_save_button_clicked() {QString filename QFileDialog::getSaveFileName(this, tr(保存文件), , tr(文本文件 (*.txt)));if (!filename.isNull()) {QFile file(filename);if (!file.open(QIODevice::WriteOnly | QIODevice::Text)) {QMessageBox::warning(this, tr(警告), tr(无法保存文件) filename, QMessageBox::Ok);}QTextStream out(file);out text_edit-toPlainText();} } 示例2设置快捷键使用CtrlS保存文件 void MyWidget::init_connections() {connect(button, QPushButton::clicked, this, MyWidget::on_save_button_clicked);connect(text_edit, QTextEdit::textChanged, this, MyWidget::on_text_changed); }void MyWidget::on_save_button_clicked() {QString filename QFileDialog::getSaveFileName(this, tr(保存文件), , tr(文本文件 (*.txt)));if (!filename.isNull()) {QFile file(filename);if (!file.open(QIODevice::WriteOnly | QIODevice::Text)) {QMessageBox::warning(this, tr(警告), tr(无法保存文件) filename, QMessageBox::Ok);}QTextStream out(file);out text_edit-toPlainText();} }void MyWidget::keyPressEvent(QKeyEvent *event) {if (event-modifiers() Qt::ControlModifier event-key() Qt::Key_S) {on_save_button_clicked();} } 这里我们实现了一个快捷键即使用CtrlS键保存文件。在keyPressEvent()函数中我们捕捉用户的按键操作并执行自定义的操作。
http://www.hkea.cn/news/14291709/

相关文章:

  • 做水处理药剂的公司网站国外 wordpress 免费空间
  • 甘肃做网站哪个平台好电影网站建设步骤
  • 教学网站开发视频谷歌推广和seo
  • 好用的h5制作软件太原优化网站排名
  • 做网站用什么语言高效南京市高淳区城乡建设局网站
  • 嘉祥县网站建设常州辉煌网络网站建设
  • 电商网站的需求文档怎么免费做自己的网站
  • 网站原文件怎么上传空间网站建设的目标客户
  • 坑梓网站建设基本流程抖音代运营合作模式
  • 域名被墙检测网站建设阿华seo
  • 上海青浦房地产网站建设大连华南网站建设
  • 2016做砸了的小网站安装wordpress出错
  • 怎么看别人网站怎么做的网站该怎么找
  • html基础试题及答案seo网站推广的主要目的不包括
  • 做360网站优化快速商业模式包括哪些模式
  • 黄岩建设局网站网站内容管理系统
  • 长沙网站优化外包服务天津特定网站建设推广
  • 宁波模板建站定制网站垂直网站建设规模
  • 网站建设仟金手指专业12做poster的网站
  • 国内做的比较好的跨境电商网站平度网站建设公司电话
  • 唐山市建设网站wordpress修改 id
  • 建网站收费多少钱移动应用开发是什么意思
  • 网站与域名的关系有没有教做蛋糕的网站
  • 曲靖市建设局网站站长工具浪潮
  • 重庆网站建设接重庆零臻科技wordpress增加侧边栏
  • 微信微网站模版分布式wordpress
  • 网站域名备案与解析哪里的郑州网站建设
  • 网站挖掘工具wordpress编辑器自动加p标签
  • 网站搜索功能模块中国广东手机网站建设
  • 北京住房和城乡建设部官方网站做新房用哪个网站好