Титла: QListWidget и QTextBrowser проблеми със свързването Публикувано от: LinuxFanUNIX в Apr 16, 2009, 18:56 Добър ден.
Много се извинявам че ви пиша, но имам проблем който вече 24 часа не мога да оправя. Изчетох цялата документация на тези обекти, изчетох и документацията на сигналите, но пак не мога да се справя. Затова ви моля за помощ. Създал съм два обекта: QListWidget и QTextBrowser съответно с имена listWidget и textBrowser Създал съм и item-и в QListBox: Във for цикъл съм създал това да става: Код
Въпросът ми е как да свържа ListWidget-а с TextBrowser-а и кликайки върху някой ред да се извика item с номер (i) изпълни Код т.е. от ListWidget-а кликайки на първия item да се изведе текст в текст браузера 1. Ако съм избрал Name15 да се изведе текст "15" - т.е. id-то на избрания item. Надявам се, че сте ме разбрали. Ще се радвам ако ми помогнете. Благодаря предварително! Титла: Re: QListWidget и QTextBrowser проблеми със свързването Публикувано от: eniac111 в Apr 16, 2009, 19:31 На bash ще стане по- лесно
Титла: Re: QListWidget и QTextBrowser проблеми със свързването Публикувано от: task_struct в Apr 16, 2009, 20:42 Свържи сигнала void QListWidget::currentRowChanged ( int currentRow ) с твой слот, в който да се сетва текста на QTextBrowser ;)
Титла: Re: QListWidget и QTextBrowser проблеми със свързването Публикувано от: LinuxFanUNIX в Apr 16, 2009, 20:59 Това ли имаш впредвид?
Код
С това ми дава грешка от рода: Код
Интересно ми е как ще стане на bash... :) Иначе - как би трябвало да го направя в Qt4? Нещо не ми се връзва. Титла: Re: QListWidget и QTextBrowser проблеми със свързването Публикувано от: lkr в Apr 16, 2009, 21:04 Код
Код
Титла: Re: QListWidget и QTextBrowser проблеми със свързването Публикувано от: LinuxFanUNIX в Apr 16, 2009, 22:28 Благодаря за отговора, но по този начин, ми връща текста (в случая 'blah'), а аз искам да ми връща номера на записа...
Код
т.е. в случая трябва да върне "i" което се пада и номера на реда... Разгледах пак функциите, но уви - удрям на камък. Титла: Re: QListWidget и QTextBrowser проблеми със свързването Публикувано от: task_struct в Apr 16, 2009, 22:55 Свържи сигнала void QListWidget::currentRowChanged ( int currentRow ) със слот на ui с примерно име void setInt(int currentRow);
Примерен код: Код: void ui::setInt(int currentRow) Титла: Re: QListWidget и QTextBrowser проблеми със свързването Публикувано от: LinuxFanUNIX в Apr 17, 2009, 00:28 Код
Object::connect: No such signal QListWidget::currentRowChanged(int currentRow) Object::connect: (sender name: 'listWidget') Object::connect: (receiver name: 'MainWindowClass') Object::connect: No such signal QListWidget::currentRowChanged(int currentRow) Object::connect: (sender name: 'listWidget') Object::connect: (receiver name: 'MainWindowClass') Май няма да може да стане това... ;( Титла: Re: QListWidget и QTextBrowser проблеми със свързването Публикувано от: task_struct в Apr 17, 2009, 08:27 Не пишеш правилно имената на фукциите в SLOT и SIGNAL макросите: http://doc.trolltech.com/4.5/signalsandslots.html
Код: connect(ui->listWidget, SIGNAL(currentRowChanged(int)), this, SLOT(setInt(int))); Титла: Re: QListWidget и QTextBrowser проблеми със свързването Публикувано от: LinuxFanUNIX в Apr 17, 2009, 15:08 Благодаря за отговора. Златен си!
Имам и още един, нядавам се последен въпрос: Тъй като използвам QtCreator за създаване на Qt4 приложения, искам да свържа обикновен QPushButton с диалог, който обаче е изчертан в отделен .ui файл. Та въпросът ми е, след като оправя сигналите, и слотовете, как точно да свържа едните cpp и хедъри с другите... Давам пример: Имам mainwindow.cpp, mainwindow.h, main.cpp mainwindow.ui От QtCreator създавам UI клас, което ми създава допълнителни три файла: dialog.cpp dialog.h dialog.ui Та въпросът ми е как да ги свържа? Благодаря предварително! Титла: Re: QListWidget и QTextBrowser проблеми със свързването Публикувано от: task_struct в Apr 17, 2009, 15:50 Ако съм разбрал правилно: Искаш при натискане на бутона да се покаже диалога?
Това ще стане така: 0) инклудваш dialog.h в mainwindow.cpp 1) Създаваш си 1 слот на mainwindow примерно void buttonClicked() 2) свързваш слигнала clicked() на бутона към този слот. 3) Във buttonClicked() си създаваш един диалог и го показваш. П.С Може и да им по лесен начин, ама вмомента ме мързи да мисля :( :D Титла: Re: QListWidget и QTextBrowser проблеми със свързването Публикувано от: LinuxFanUNIX в Apr 17, 2009, 20:19 Ако съм разбрал правилно: Искаш при натискане на бутона да се покаже диалога?Въпросът ми е обаче - в трета точка - какво да напиша в слота buttonClicked() за да се покаже вече изчертания в dialog.ui диалог? Благодаря предварително! Титла: Re: QListWidget и QTextBrowser проблеми със свързването Публикувано от: task_struct в Apr 17, 2009, 23:12 Създаваш си обек от типа на диалога и тъй като той е наследен от QDialog използваш неговите член функции: http://doc.trolltech.com/4.5/qdialog.html#exec
Титла: Re: QListWidget и QTextBrowser проблеми със свързването Публикувано от: LinuxFanUNIX в Apr 17, 2009, 23:37 Създаваш си обек от типа на диалога и тъй като той е наследен от QDialog използваш неговите член функции: http://doc.trolltech.com/4.5/qdialog.html#execТака вече е по-друго... :P Благодаря ти човече, повече си от златен... Сигурно имаш повече от две висши по Qt4. Вярно е, че всичко е описано в страницата на TrollTech, обаче друго си е българската реч. Пък и аз само се нуждая от мааааалко напомняне и действам. :) Благодаря ти много още веднъж! Да си жив и здрав! Титла: Re: QListWidget и QTextBrowser проблеми със свързването Публикувано от: LinuxFanUNIX в Apr 18, 2009, 16:23 Така. И за да не отварям нова тема, да питам тук.
В меню бара, в секция Help съм добавил License. Това ли трябва да добавя: GNU.txt (прикачен файл) И още нещо. Програмата е готова. Трябва ли преди да пусна сорса в h и cpp файловете, да се вписва нещо преди първото #include ... ? Благодаря предварително! Титла: Re: QListWidget и QTextBrowser проблеми със свързването Публикувано от: LinuxFanUNIX в Apr 20, 2009, 04:47 Така. И за да не отварям нова тема, да питам тук.Никой ли няма да помогне? Титла: Re: QListWidget и QTextBrowser проблеми със свързването Публикувано от: dvasilev в Apr 20, 2009, 10:53 @LinuxFanUNIX: Мисля, че не е много ясно какво точно питаш. Ако въпросът ти е какво да направиш за да е ясно под какъв лиценз е изходния код на програмата и кои са авторите, то няма еднозначен отговор, тъй като има различни практики. Предполагам, че програмата ти е под GPL. В самия лиценз има цяла секция какво трябва да се направи за анонсирането на лиценза.
Така или иначе следния линк се надявам да ти свърши работа http://producingoss.com/en/license-quickstart.html |