Название: QTabWidget Отправлено: demaker от Сентябрь 02, 2011, 12:28 Помогите ??? Хочу сделать так что при новом конекте к серверу добавлялся новый таб, как правильно это сделать ??? Читаю хелп на функцию int QTabWidget::addTab(QWidget* page, const QString &label) но как-то все мудрено.
Название: Re: QTabWidget Отправлено: Пантер от Сентябрь 02, 2011, 12:30 Там все предельно просто. Покажи что делаешь и что не получается.
Название: Re: QTabWidget Отправлено: demaker от Сентябрь 02, 2011, 14:07 У меня сервак многопоточный
void EchoServer::incomingConnection(int socketDescriptor) { EchoThread* thread = new EchoThread(socketDescriptor,this); // создаем отдельный поток connect(thread,SIGNAL(finished()),this,SLOT(removeThread()),Qt::DirectConnection); m_threads.append(thread); connect(thread,SIGNAL(receiveComplete(QString)),this,SIGNAL(signal_showByteArray(QString))); connect(thread,SIGNAL(idNewClient(QString)),this,SIGNAL(signal_newClient(QString))); emit siganl_addTab(); // посылаю сигнал на добавление таба thread->start(); } serverForm::serverForm(QWidget *parent) : QWidget(parent), ui(new Ui::serverForm) { ui->setupUi(this); server = new EchoServer(); connect(server,SIGNAL(siganl_addTab()),this,SLOT(slot_addTab())); server->start(); } void serverForm::slot_addTab() { ui->tabWidget->addTab(this,"newTab"); } Название: Re: QTabWidget Отправлено: Пантер от Сентябрь 02, 2011, 14:10 Дык что должно в табе отображаться?
Код Надеюсь, дальше сам разберешься. Название: Re: QTabWidget Отправлено: demaker от Сентябрь 02, 2011, 14:23 Спасибо, все добавляется :)
Название: Re: QTabWidget Отправлено: demaker от Сентябрь 06, 2011, 18:02 если я хочу добавить лейаут и текстэдит так можно??? ??? код: class miniTab: public QWidget { public: QLayout*layout; QTextEdit*text; public slots: }; miniTab * mT; tabWidget->addTab(mT,"new"); Название: Re: QTabWidget Отправлено: kambala от Сентябрь 06, 2011, 18:06 а где конструктор класса miniTab? в нем надо выделить память под текстэдит и накинуть лэйаут (последний можно не хранить членом класса). ну и дальше в коде надо тоже выделить память под mT
Название: Re: QTabWidget Отправлено: demaker от Сентябрь 06, 2011, 18:16 Да сорри, не дописал ;D
class miniTab: public QWidget { public: QLayout*layout; QTextEdit*text; public: miniTab(); ~miniTab(); public slots: }; miniTab::miniTab() { layout = new QLayout; text = new QTextEdit; } miniTab * mT = new miniTab; tabWidget->addTab(mT,"new"); Название: Re: QTabWidget Отправлено: kambala от Сентябрь 06, 2011, 18:56 может все-таки вот так?
Код
|