您的位置:首页 > 编程语言 > Qt开发

qt_简易记事本_3

2015-11-30 22:45 363 查看
接上次

QMainWindow:QMainWindow类提供一个有菜单条、锚接窗口(例如工具条)和一个状态条的主应用程序窗口。 主窗口通常用在提供一个大的中央窗口部件(例如文本编辑或者绘制画布)以及周围菜单、工具条和一个状态条。

这里贴一个地址:http://www.kuqin.com/qtdocument/qmainwindow.html#details

QMainWindow::close() //点击窗口的右上角的X的时候 执行 它又会去调用QMainWindow::closeEvent(QCloseEvent *)

//默认就是退出程序了

使用的地方在:windows的记事本的文件菜单的最后一个菜单项是 <退出> ,点击的时候 先判断窗口中的内容是否发生修改 从而决定是否进行保存 当点击了保存或者不保存并且完成了相关操作之后 从而退出程序

///////////////////////////////////////////////

QString :类似于c++中STL中的string类 java 中的String类

clear() //清空字符串 里面什么也没有 类似char *str="";

///////////////////////////////////////////////

QMainWindow: 上面已经介绍

当点击窗口的右上角的X时候,首先是 QMainWindow::close()函数的执行,这个函数会进一步调用QMainWindow::closeEvent(QCloseEvent *),所以要想在关闭窗口的时候做一些事情那就要在继承自QMainWindow的派生类中覆盖这个方法,我就覆盖了这个方法,为的就是在关闭窗口的时候 判断文本区中的内容是否被修改过 从而提示是否对其进行 。

大体的框架如下:

class son_class::public QMainWindow

{//... ...

};

void son_class::closeEvent(QCloseEvent *event)

{//你准备做的

QMainWindow::closeEvent(event);//向下传递给基类的成员函数 (这种手段貌似很常用)

}

如果在弹出的询问是否保存的窗口中点击了取消 那么就是不进行保存也不退出程序 那么就

应该忽略这个事件 也就是

event->ignore() //这样就可以了 (函数名挺形象化)

当然也就有对立的event->accept() //接受某个事件 这次我没有使用 (也挺形象化)

///////////////////////////////////////////////

QAction:前面写过了

isCheckable() //判断一个菜单项前面是否有对号或其它标记之类的 返回bool

///////////////////////////////////////////////

QTextEdit: 前面写过了

setWordWrapMode(QTextOption::NoWrap); //设置水平滚动条

edit->setWordWrapMode(QTextOption::WordWrap); //取消水平滚动条 目的是 模仿windows记事本的  自动换行

///////////////////////////////////////////////

QFontDialog: (标准对话框)字体对话框 可以进行选择字体

使用还是较简单的

QFont font;    //设置的字体

 QFontDialog font_dlg;  //字体对话框

 bool is_choosed;   //是否选择了颜色

 font = font_dlg.getFont(&is_choosed);

 if (is_choosed)    //确实选择的字体

 {

  edit->setFont(font);

 }

当点击了字体对话框中的取消的时候 getFont()的参数的bool的值将被置为false 说明没有进行颜色选择 所以需要判断is_choosed的真假

效果:



/////////////////////////////////////////////////////////////

QColorDialog:(标准对话框)颜色对话框

用着也不难

QColorDialog color_dlg;   //颜色对话框

 QColor color;     //字体预设置的颜色

 color = color_dlg.getColor(Qt::black); //起始颜色为黑色

 if (color.isValid())  //选择了颜色

 {

//使用这个颜色

 }

和文件对话框一样 当点击了颜色对话框上的取消按钮之后 返回一个无效的颜色 所以需要判断这个颜色是否有效 color.isValid()返回bool值

效果:



发现了 它们全是英文 显示 我没有做处理 去看看QTranslator 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c++ qt