Russian Qt Forum
Ноябрь 26, 2024, 07:30 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: [Qt 3.3.3] toolbar  (Прочитано 3811 раз)
IzoLda
Гость
« : Февраль 08, 2011, 13:58 »

Здравствуйте!у меня проблема в том что не показывается toolBar.
toolBar = new QToolBar(tr("File"),this);
   //toolBar->setLabel("Редактирование учетной записи");
   
   QAction *addAction;
   QAction *deleteAction;
   QAction *changeAction;
   
   Table = new QTable(0, 0, this, "user account");
   Table->setNumCols(3);
   Table->setColumnWidth(0, 140);
   Table->setColumnWidth(1, 100);
   Table->setColumnWidth(2, 170);
   QHeader *th = Table->horizontalHeader();
   th->setLabel( 0, tr( "Пользователь" ) );
   th->setLabel( 1, tr( "Пароль" ) );
   th->setLabel( 2, tr( "Уровень доступа" ) );
   
   connect(CancelButton, SIGNAL(clicked()), this, SLOT(close()));
   connect(OkButton, SIGNAL(clicked()), this, SLOT(OkClicked()));

   addAction = new QAction(
      QPixmap((const char**)sta_xpm), tr( "Добавить пользователя" ), CTRL + Key_U, this, "addUser" );
      connect( addAction, SIGNAL( activated() ), this, SLOT( AddClicked() ) );
   
   deleteAction = new QAction(
      QPixmap((const char**)delete_xpm), tr( "Удалить пользователя" ), CTRL + Key_D, this, "deleteUser" );
      connect( deleteAction, SIGNAL( activated() ), this, SLOT( DelClicked() ) );
         
   changeAction = new QAction(
      QPixmap((const char**)commut_xpm), tr( "Изменить пользователя" ), CTRL + Key_G, this, "changeUser" );
      connect( deleteAction, SIGNAL( activated() ), this, SLOT( ChangeClicked() ) );

      addAction->addTo( toolBar );
      deleteAction->addTo( toolBar );
      changeAction->addTo( toolBar );
   
   QVBoxLayout *TLayout = new QVBoxLayout;
   TLayout->addWidget(toolBar);
   TLayout->addWidget(Table);
   
   QHBoxLayout *BLayout = new QHBoxLayout;
   BLayout->addStretch(1);
   BLayout->addWidget(OkButton);
   BLayout->addWidget(CancelButton);
   
   QVBoxLayout *WLayout = new QVBoxLayout(this);
   WLayout->addLayout(TLayout);
   WLayout->addLayout(BLayout);

вы не могли бы подсказать в чем проблема?может я не понимаю принципы работы данного виджета...кнопки и таблица отображаются
« Последнее редактирование: Февраль 08, 2011, 14:45 от Пантер » Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #1 : Февраль 08, 2011, 14:01 »

Пользуйся тегом code. Версия Qt какая? Тройка, что ли? Если нет, то ты забыл void QMainWindow::addToolBar ( QToolBar * toolbar )
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
IzoLda
Гость
« Ответ #2 : Февраль 08, 2011, 14:23 »

ммм...не знаю какая версия...я пишу в нотпаде и компилирую на линуксе...и я не поняла куда добавлять и что за функция?
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #3 : Февраль 08, 2011, 14:25 »

qmake --version что выдает?
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
IzoLda
Гость
« Ответ #4 : Февраль 08, 2011, 14:36 »

version: 1.07a (Qt 3.3.3)
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #5 : Февраль 08, 2011, 14:43 »

Qt 3.3.3
Тут я помочь не могу, жди тех, кто еще помнит. Улыбающийся
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
IzoLda
Гость
« Ответ #6 : Февраль 08, 2011, 14:43 »

))))понятно...пасиб за попытку)
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #7 : Февраль 08, 2011, 14:45 »

Я подправил тему сообщения. В следующий раз указывай версию, чтобы проблем не было.
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #8 : Февраль 08, 2011, 15:30 »

В Qt3 QToolBar - это переопределённый QDockWindow, который может помещён только в  QDockArea, который в свою очередь только в QMainWindow. Поэтому у тебя 2 решения - используй в качестве top-level окна QMainWindow и создавай тулбар как подсказал Пантер либо используй вместо QToolBar другой виджет, например, QHBox и уже сама добавляй туда QToolButton's.
Записан

Qt 5.11/4.8.7 (X11/Win)
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.05 секунд. Запросов: 23.