crossplatform.ru

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

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


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

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

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




Репутация:   6  


блин, меню туда побыстрому присобачить неудалось. а так работает...
проект на всяк присобачиваю..

Сообщение отредактировал trdm - 2.10.2008, 16:30
Прикрепленные файлы
Прикрепленный файл  dockwidgets.zip ( 14.85 килобайт ) Кол-во скачиваний: 99
 
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
AD
  опции профиля:
сообщение 2.10.2008, 17:07
Сообщение #12


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

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

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




Репутация:   17  


Цитата(trdm)
блин, меню туда побыстрому присобачить неудалось. а так работает...
проект на всяк присобачиваю..

Благодаря данному примеру у меня получилось сделать и с QMainWindow! :) Большое спасибо! :) Нашел ошибку в своем предыдущем коде, поправил и все заработало. Эврика.
Итак, вывод - проблему можно решить 2 способами, через QFrame с QLayout или через 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 | Qt::RightToolBarArea);
    toolBar -> setVisible(true);
    addIconToolbar();
    reliefDisplay -> addToolBar(Qt::LeftToolBarArea, toolBar);
    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, reliefDisplay);
    text = "Repair";
    QAction* repair_action = new QAction(QIcon("./Images/repair.png"), text, reliefDisplay);

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


QAction* save_action = new QAction(QIcon("./Images/save.png"), text, reliefDisplay); - вот строка, где кроилась ошибка. До этого у меня последним параметром был this!!!
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 2.10.2008, 17:49
Сообщение #13


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

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




Репутация:   94  


Цитата(trdm @ 2.10.2008, 20:27) *
проект на всяк присобачиваю..
как-то не звучит это слово, лучше: прикладываю
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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




RSS Текстовая версия Сейчас: 29.3.2024, 8:18