crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

2 страниц V   1 2 >  
Ответить в данную темуНачать новую тему
> Панель инструментов в прикрепляемом окне, QToolBar in QDockWidget
AD
  опции профиля:
сообщение 2.10.2008, 10:53
Сообщение #1


Профессионал
*****

Группа: Участник
Сообщений: 2003
Регистрация: 4.2.2008
Из: S-Petersburg
Пользователь №: 84

Спасибо сказали: 70 раз(а)




Репутация:   17  


Непонимаю, что я неточно делаю, что получается вот такая ерунда:
[attachment=263:test_picture.JPG]

Вот код создания панельки инструментов.
ReliefGraphics::ReliefGraphics(QWidget *parent): toolBar(0), settings(0)
{
    toolBar = new QToolBar(this);
    toolBar -> setObjectName(QString::fromUtf8("toolBar"));
    toolBar -> setOrientation(Qt::Vertical);
    toolBar -> setToolButtonStyle(Qt::ToolButtonIconOnly);
    toolBar -> setAllowedAreas(Qt::LeftToolBarArea);

    settings = new PlotSettings();
    addIconToolbar();
}

ReliefGraphics::~ReliefGraphics()
{
    if(toolBar) delete toolBar;
    if(settings) delete settings;
}

/// Добавление иконок в панель инструментов
void ReliefGraphics::addIconToolbar()
{
    QString text = "Save";
    toolBar -> addAction(QIcon("./Images/save.png"), text);

    text = "Repair";
    toolBar -> addAction(QIcon("./Images/repair.png"), text);
}


Ну что я не так-то делаю???
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
AD
  опции профиля:
сообщение 2.10.2008, 11:44
Сообщение #2


Профессионал
*****

Группа: Участник
Сообщений: 2003
Регистрация: 4.2.2008
Из: S-Petersburg
Пользователь №: 84

Спасибо сказали: 70 раз(а)




Репутация:   17  


Ау. Поможете?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
trdm
  опции профиля:
сообщение 2.10.2008, 13:22
Сообщение #3


Дмитрий Трошин
****

Группа: Участник
Сообщений: 575
Регистрация: 12.1.2008
Пользователь №: 68

Спасибо сказали: 21 раз(а)




Репутация:   6  


Может стоит просто откомпоновать тулбар через лайоты?
Сильно подозреваю, что автокрепежка и автовыравнивание тулюаров реализованно только для QMainWindow - подобных окошек, а в остальных лучше компоновкой работать с ними.

Сообщение отредактировал trdm - 2.10.2008, 13:25
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
AD
  опции профиля:
сообщение 2.10.2008, 15:03
Сообщение #4


Профессионал
*****

Группа: Участник
Сообщений: 2003
Регистрация: 4.2.2008
Из: S-Petersburg
Пользователь №: 84

Спасибо сказали: 70 раз(а)




Репутация:   17  


Цитата(trdm @ 2.10.2008, 14:22) *
Может стоит просто откомпоновать тулбар через лайоты?
Сильно подозреваю, что автокрепежка и автовыравнивание тулюаров реализованно только для QMainWindow - подобных окошек, а в остальных лучше компоновкой работать с ними.

Нет, компоновщики тут не помогут. Посоветовали использовать QMainWindow! Так и сделал - возник другой вопрос: как заставить этот внутренний QMainWindow отображаться внутри вложенного в главное окно приложения доквиджета? Сейчас эта QMainWindow отображается как еще одно окно, чего мне совсем не надо.

Вот код:
ReliefGraphics::ReliefGraphics(QWidget *parent): toolBar(0), settings(0)
{
    setupUi(this);

    toolBar = new QToolBar(reliefDisplay);
    toolBar -> setObjectName(QString::fromUtf8("toolBar"));
    toolBar -> setToolButtonStyle(Qt::ToolButtonIconOnly);
    toolBar -> setOrientation(Qt::Vertical);
    toolBar -> setAllowedAreas(Qt::LeftToolBarArea);
    addIconToolbar();
    reliefDisplay -> addToolBar(Qt::LeftToolBarArea, toolBar);
    reliefDisplay -> setVisible(true);
    setWidget(reliefDisplay);

    settings = new PlotSettings();
}

ReliefGraphics::~ReliefGraphics()
{
    if(toolBar) delete toolBar;
    if(settings) delete settings;
}

/// Добавление иконок в панель инструментов
void ReliefGraphics::addIconToolbar()
{
    QString text = "Save";
    QAction* save_action = new QAction(QIcon("./Images/save.png"), text, this);
    text = "Repair";
    QAction* repair_action = new QAction(QIcon("./Images/repair.png"), text, this);

    toolBar -> addAction(save_action);
    toolBar -> addAction(repair_action);
}


class Ui_VerticalGraphicClass
{
public:
    QGridLayout *gridLayout;
    QMainWindow *reliefDisplay;

public:
    void setupUi(QDockWidget *ReliefClass);                    // setupUi
    void retranslateUi(QDockWidget *ReliefClass);            // retranslateUi
};

namespace Ui
{
    class VerticalGraphicClass: public Ui_VerticalGraphicClass {};
} // namespace Ui


Параллельные вопрос: как убрать у этого mainwindow строку заголовка?

Сообщение отредактировал AD - 2.10.2008, 15:08
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
trdm
  опции профиля:
сообщение 2.10.2008, 15:22
Сообщение #5


Дмитрий Трошин
****

Группа: Участник
Сообщений: 575
Регистрация: 12.1.2008
Пользователь №: 68

Спасибо сказали: 21 раз(а)




Репутация:   6  


нарисуй, че убрать хочешь..
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
AD
  опции профиля:
сообщение 2.10.2008, 15:32
Сообщение #6


Профессионал
*****

Группа: Участник
Сообщений: 2003
Регистрация: 4.2.2008
Из: S-Petersburg
Пользователь №: 84

Спасибо сказали: 70 раз(а)




Репутация:   17  


Цитата
нарисуй, че убрать хочешь..

Ta dam

[attachment=264:test_picture1.JPG]
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
trdm
  опции профиля:
сообщение 2.10.2008, 15:37
Сообщение #7


Дмитрий Трошин
****

Группа: Участник
Сообщений: 575
Регистрация: 12.1.2008
Пользователь №: 68

Спасибо сказали: 21 раз(а)




Репутация:   6  


короче весь вопрос в том как присобачить тулбар на доковое окошко?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
AD
  опции профиля:
сообщение 2.10.2008, 15:40
Сообщение #8


Профессионал
*****

Группа: Участник
Сообщений: 2003
Регистрация: 4.2.2008
Из: S-Petersburg
Пользователь №: 84

Спасибо сказали: 70 раз(а)




Репутация:   17  


Цитата(trdm @ 2.10.2008, 16:37) *
короче весь вопрос в том как присобачить тулбар на доковое окошко?

Изначально, да. Теперь видоизменился: как присобачить mainwindow в dockwidget?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
trdm
  опции профиля:
сообщение 2.10.2008, 16:12
Сообщение #9


Дмитрий Трошин
****

Группа: Участник
Сообщений: 575
Регистрация: 12.1.2008
Пользователь №: 68

Спасибо сказали: 21 раз(а)




Репутация:   6  


Как насчет такого подхода? :)
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
AD
  опции профиля:
сообщение 2.10.2008, 16:20
Сообщение #10


Профессионал
*****

Группа: Участник
Сообщений: 2003
Регистрация: 4.2.2008
Из: S-Petersburg
Пользователь №: 84

Спасибо сказали: 70 раз(а)




Репутация:   17  


Цитата
Как насчет такого подхода? :)

попробую.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

2 страниц V   1 2 >
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 27.1.2021, 21:42