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

网站建设管理专员绝对域名做网站

网站建设管理专员,绝对域名做网站,深圳住房建设厅网站首页,做网站 的主要收获Qt 是目前最先进、最完整的跨平台C开发工具。它不仅完全实现了一次编写,所有平台无差别运行,更提供了几乎所有开发过程中需要用到的工具。如今,Qt已被运用于超过70个行业、数千家企业,支持数百万设备及应用。 在本文中&#xff0…

Qt 是目前最先进、最完整的跨平台C++开发工具。它不仅完全实现了一次编写,所有平台无差别运行,更提供了几乎所有开发过程中需要用到的工具。如今,Qt已被运用于超过70个行业、数千家企业,支持数百万设备及应用。

在本文中,我们通过使用C++和Qt Widgets模块实现一个简单的记事本应用程序来学习基本的Qt知识,该应用程序是一个小型的文本编辑器,允许您创建文本文件、保存、打印或重新打开并在此编辑它,还可以设置要使用的字体。

在上文中(点击这里回顾>>),我们为大家介绍了设计用户界面时的Qt Designer(设计器)使用、Notepad Header文件、Notepad 源文件等,本文将继续介绍如何添加用户交互,欢迎持续关注我们。

【实操干货】如何开始用Qt Widgets编程?(一)

点击获取Qt Widget组件下载(Q技术交流:166830288)

添加用户交互

要向编辑器添加功能,首先在工具栏上添加菜单项和按钮。

点击"Type Here",然后添加New、Open、Save、Save as、Print和Exit,这将在下面的Action Editor中创建5行代码。要将操作连接到插槽,请右键单击操作并选择Go To slot > triggered(),然后完成给定插槽的代码。

如果还想将操作添加到工具栏,我们可以为每个QAction分配一个图标,然后将QAction拖到工具栏中。通过在相关操作的icon属性中输入图标名称来分配图标,当QAction被拖到工具栏时,单击图标将启动关联的槽。

完成方法newDocument():

void Notepad::newDocument()
{
currentFile.clear();
ui->textEdit->setText(QString());
}

currentFile变量是一个包含当前正在编辑文件的全局变量,clear()清除文本缓冲区,currentFile变量定义在notepad.h的私有部分:

private:
Ui::Notepad *ui;
QString currentFile;
打开文件

在notepad.ui中,右键单击actionOpen并选择Go to Slot。

完成open()方法。

void Notepad::open()
{
QString fileName = QFileDialog::getOpenFileName(this, "Open the file");
if (fileName.isEmpty())
return;
QFile file(fileName);
currentFile = fileName;
if (!file.open(QIODevice::ReadOnly | QFile::Text)) {
QMessageBox::warning(this, "Warning", "Cannot open file: " + file.errorString());
return;
}
setWindowTitle(fileName);
QTextStream in(&file);
QString text = in.readAll();
ui->textEdit->setText(text);
file.close();
}

QFileDialog::getOpenFileName打开一个对话框,您能选择一个文件。QFile对象myfile有选择的file_name作为参数,还将选中的文件存储到全局变量currentFile中,以供稍后使用。我们用文件打开文件,作为只读文本文件打开。如果无法打开,则发出警告,并停止程序。

为参数myfile定义了一个QTextStream流,文件myfile的内容被复制到QString文本中,setText(text)用文本填充编辑器的缓冲区。

保存文件

我们以与打开文件相同的方式创建保存文件的方法,即右键单击actionSave并选择Go to Slot。

void Notepad::save()
{
QString fileName;
// If we don't have a filename from before, get one.
if (currentFile.isEmpty()) {
fileName = QFileDialog::getSaveFileName(this, "Save");
if (fileName.isEmpty())
return;
currentFile = fileName;
} else {
fileName = currentFile;
}
QFile file(fileName);
if (!file.open(QIODevice::WriteOnly | QFile::Text)) {
QMessageBox::warning(this, "Warning", "Cannot save file: " + file.errorString());
return;
}
setWindowTitle(fileName);
QTextStream out(&file);
QString text = ui->textEdit->toPlainText();
out << text;
file.close();
}

QFile 对象myfile链接到全局变量current_file,该变量包含正在处理的文件。如果无法打开myfile,则会发出错误消息并停止该方法。我们创建一个QTextStream输出,编辑器缓冲区的内容被转换为纯文本,然后写入输出。

以另一个名称保存文件
void Notepad::saveAs()
{
QString fileName = QFileDialog::getSaveFileName(this, "Save as");
if (fileName.isEmpty())
return;
QFile file(fileName);if (!file.open(QFile::WriteOnly | QFile::Text)) {
QMessageBox::warning(this, "Warning", "Cannot save file: " + file.errorString());
return;
}
currentFile = fileName;
setWindowTitle(fileName);
QTextStream out(&file);
QString text = ui->textEdit->toPlainText();
out << text;
file.close();
}

这与保存文件的过程相同,唯一的区别是这里需要为要创建的文件输入一个新的文件名。

http://www.yayakq.cn/news/640090/

相关文章:

  • 大连建设教育网站外贸推广渠道有哪些
  • 产品网站建设方案唐山网站制作app
  • 多国语言外贸网站模板哈尔滨队网站网页美工
  • 大型网站 空间注册一个网站的流程
  • 贾汪城乡建设局网站网站建设叁金手指花总8
  • 做彩票网站关于建设殡葬网站的报告范文
  • iis7发布php网站网站建设网络推广广告语
  • 厦门品牌网站设计智能创作平台
  • 快速网站搭建上海闸北网站建设
  • 用dw做网站怎么上传到网站上网站开发前端规范
  • 二级域名网站建设规范wordpress手机版设置
  • 香洲区建设局网站网站管理系统怎么用
  • 如何做好网站的推广工作最适合seo的wordpress主题
  • 泉州网站设计平台网站首页可以做竖版吗
  • iis怎么搭建设计网站网站建设的潜规则
  • 快云服务器怎么做网站网站手机开
  • 网站建设公司的问答营销案例网站建设排名公司
  • 网站建设的重要性与价值购物网站 wordpress 英文模板
  • 网站制作源码版权南充高端网站建设
  • 网站开发环境是什么意思网站改版 影响
  • 衡水网站建设公司销售管理系统数据库设计
  • 网站开发的语言卧龙区网站制作
  • 网站设计开发招聘免费咨询医生有问必答
  • 企业网站seo诊断做网站的哪家好
  • 域名绑了小程序还可以做网站吗wordpress菜单和页面的关系
  • 昆明云南微网站制作哪家好网站一级页面标题怎么做
  • win7网站开发教程珠海企业网站建设公司
  • 湖北勘察设计协会网站做网站维护一工资多少钱
  • 网站充值平台怎么做的钟山区生态文明建设局网站
  • 网站怎么做让PC和手机自动识别上海互联网公司