文本编辑器创建工具栏
生活随笔
收集整理的這篇文章主要介紹了
文本编辑器创建工具栏
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 1 文本編輯器創建工具欄
1 文本編輯器創建工具欄
在MainWindow.h中增加如下函數聲明:
bool initToolBar(); bool initFileToolItem(QToolBar* tb); bool initEditToolItem(QToolBar* tb); bool initFormatToolItem(QToolBar* tb); bool initViewToolItem(QToolBar* tb); bool makeAction(QAction*& action, QString tip, QString icon);MainWindow.h中實現上面的函數:
bool MainWindow::initToolBar() {bool ret = true;QToolBar* tb = addToolBar("Tool Bar");tb->setIconSize(QSize(16, 16));ret = ret && initFileToolItem(tb);tb->addSeparator();ret = ret && initEditToolItem(tb);tb->addSeparator();ret = ret && initFormatToolItem(tb);tb->addSeparator();ret = ret && initViewToolItem(tb);return ret; }bool MainWindow::initFileToolItem(QToolBar* tb) {bool ret = true;QAction* action = NULL;ret = ret && makeAction(action, "New", ":/res/pic/new.png");if( ret ){tb->addAction(action);}ret = ret && makeAction(action, "Open", ":/res/pic/open.png");if( ret ){tb->addAction(action);}ret = ret && makeAction(action, "Save", ":/res/pic/save.png");if( ret ){tb->addAction(action);}ret = ret && makeAction(action, "Save As", ":/res/pic/saveas.png");if( ret ){tb->addAction(action);}ret = ret && makeAction(action, "Print", ":/res/pic/print.png");if( ret ){tb->addAction(action);}return ret; }bool MainWindow::initEditToolItem(QToolBar* tb) {bool ret = true;QAction* action = NULL;ret = ret && makeAction(action, "Undo", ":/res/pic/undo.png");if( ret ){tb->addAction(action);}ret = ret && makeAction(action, "Redo", ":/res/pic/redo.png");if( ret ){tb->addAction(action);}ret = ret && makeAction(action, "Cut", ":/res/pic/cut.png");if( ret ){tb->addAction(action);}ret = ret && makeAction(action, "Copy", ":/res/pic/copy.png");if( ret ){tb->addAction(action);}ret = ret && makeAction(action, "Paste", ":/res/pic/paste.png");if( ret ){tb->addAction(action);}ret = ret && makeAction(action, "Find", ":/res/pic/find.png");if( ret ){tb->addAction(action);}ret = ret && makeAction(action, "Replace", ":/res/pic/replace.png");if( ret ){tb->addAction(action);}ret = ret && makeAction(action, "Goto", ":/res/pic/goto.png");if( ret ){tb->addAction(action);}return ret; }bool MainWindow::initFormatToolItem(QToolBar* tb) {bool ret = true;QAction* action = NULL;ret = ret && makeAction(action, "Auto Wrap", ":/res/pic/wrap.png");if( ret ){tb->addAction(action);}ret = ret && makeAction(action, "Font", ":/res/pic/font.png");if( ret ){tb->addAction(action);}return ret; }bool MainWindow::initViewToolItem(QToolBar* tb) {bool ret = true;QAction* action = NULL;ret = ret && makeAction(action, "Tool Bar", ":/res/pic/tool.png");if( ret ){tb->addAction(action);}ret = ret && makeAction(action, "Status Bar", ":/res/pic/status.png");if( ret ){tb->addAction(action);}return ret; }bool MainWindow::makeAction(QAction*& action, QString text, int key) {bool ret = true;action = new QAction(text, NULL);if( action != NULL ){action->setShortcut(QKeySequence(key));}else{ret = false;}return ret; }bool MainWindow::makeAction(QAction*& action, QString tip, QString icon) {bool ret = true;action = new QAction("", NULL);if( action != NULL ){action->setToolTip(tip);action->setIcon(QIcon(icon));}else{ret = false;}return ret; }修改MainWindow::construct函數的實現:
bool MainWindow::construct() {bool ret = true;ret = ret && initMenuBar();ret = ret && initToolBar();return ret; }參考資料:
總結
以上是生活随笔為你收集整理的文本编辑器创建工具栏的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 阳台对面有墙角怎么挂八卦镜?
- 下一篇: 文本编辑器创建状态栏