• QT day3


    1. #include "widget.h"
    2. #include "ui_widget.h"
    3. Widget::Widget(QWidget *parent)
    4. : QWidget(parent)
    5. , ui(new Ui::Widget)
    6. {
    7. ui->setupUi(this);
    8. }
    9. Widget::~Widget()
    10. {
    11. delete ui;
    12. }
    13. void Widget::on_ziti_clicked()//字體按鈕的槽函數
    14. {
    15. //直接調用Qfontdialog類中的靜態成員函數,getfont函數來調取系統提供的字體對話框
    16. bool ok; //用於接受用戶是否選中了字體
    17. QFont f= QFontDialog::getFont(&ok,//返回是否选中字体
    18. QFont("隶属",10,10,false),//初始字体的类型 大小 倾斜
    19. this, //父组件
    20. "选择字体"); //对话框标题
    21. //选中的字体进行使用
    22. if(ok)
    23. {
    24. //选中字体,可以把字体设置到文本上
    25. // ui->textEdit->setFont(f);
    26. ui->textEdit->setCurrentFont(f);//设置当前字体
    27. }
    28. else
    29. {
    30. //没选中字体
    31. QMessageBox::information(this,"提示","您取消了选择字体");
    32. }
    33. }
    34. //字体颜色对话框
    35. void Widget::on_yanse_clicked()//颜色按钮对应的槽函数
    36. {
    37. //调用静态成员函数 获得系统颜色对话框
    38. QColor c=QColorDialog::getColor(QColor("pink"),
    39. this,
    40. "选择颜色");
    41. if(c.isValid())//对选中的颜色判断合法性
    42. {
    43. //颜色合法直接使用
    44. ui->textEdit->setTextColor(c);//选中字体改变颜色
    45. ui->textEdit->setTextBackgroundColor(c);//设置选中字体的背景颜色
    46. }
    47. else
    48. {
    49. //颜色不合法
    50. QMessageBox::information(this,"提示","颜色不合法");
    51. }
    52. }
    53. //打开文件对话框
    54. void Widget::on_open_clicked()
    55. {
    56. //调用QFliedialog的静态成员函数getopenfilename来获取选中文件的路径
    57. QString filename=QFileDialog::getOpenFileName(
    58. this,
    59. "选择文件",//父组件
    60. "./",//起始路劲
    61. "Image File(*.png *.jpg *bmp);;Text File(*.txt);;All(*.*)");//过滤器
    62. //判断是否有选中文件
    63. if(filename.isNull())
    64. {
    65. QMessageBox::information(this,"提示","你取消了文件");
    66. }
    67. qDebug()<
    68. //实例化一个文件对象
    69. QFile file(filename); //使用获取到的文件路径,实例化一个文件对象,后期对文件的操作都是基于
    70. //该对象
    71. //判断文件是否存在
    72. if(!file.exists())
    73. {
    74. return;
    75. }
    76. //打开文件
    77. if(!file.open(QFile::ReadWrite))
    78. {
    79. return;
    80. }
    81. // 读取文件中的内容lll
    82. QByteArray mas=file.readAll();
    83. //将内容展示到 ui界面
    84. ui->textEdit->setText(mas);
    85. //关闭文件
    86. file.close();
    87. }
    88. void Widget::on_baocun_clicked()//保存文件
    89. {
    90. QString filename=QFileDialog::getSaveFileName(
    91. this,
    92. "保存文件",//父组件
    93. "./",//起始路劲
    94. "Image File(*.png *.jpg *bmp);;Text File(*.txt);;All(*.*)");//过滤器
    95. //判断是否有选中文件
    96. if(filename.isNull())
    97. {
    98. QMessageBox::information(this,"提示","你取消了文件");
    99. }
    100. qDebug()<
    101. //创造一个实例对象
    102. QFile file(filename); //使用获取到的文件路径,实例化一个文件对象,后期对文件的操作都是基于
    103. //该对象
    104. // //判断文件是否存在
    105. // if(!file.exists())
    106. // {
    107. // return;
    108. // }
    109. //打开文件
    110. if(!file.open(QFile::WriteOnly))//QFile::Truncate))
    111. {
    112. return;
    113. }
    114. // 读取文件中的内容
    115. QString save=ui->textEdit->toPlainText();
    116. QByteArray sa=save.toUtf8();
    117. file.write(sa);
    118. //关闭文件
    119. file.close();
    120. }

  • 相关阅读:
    比“跳一跳”好玩100倍的小游戏
    知识点 | Revit族库插件哪家强?
    Python灰帽子编程————网页信息爬取
    16.Composition API(二) (watchEffect和watch的使用)
    Java - 反射
    机械设备经营小程序商城的作用是什么
    C++PrimerPlus(第6版)中文版:Chapter16.2智能指针模版类smrtptrs.cpp
    说说TIME_WAIT和CLOSE_WAIT区别
    java基于微信小程序的鲜花销售购物商城 uniapp 小程序
    Python:Web框架 Django之manage.py
  • 原文地址:https://blog.csdn.net/qilitolxx/article/details/132630285