Название: Вопрос 2: простейший вопрос по QLabel и соnnect без классов. Отправлено: Silence от Июль 24, 2009, 09:38 привет.
простейший код.. запускаю на винде ХР - и при нажатии кнопки вылетает программа (( смысл проги - нажимаем на кнопку - запускается функция - в ней меняется текст в label исходник: Код
Название: Re: простейший вопрос по QLabel и соnnect Отправлено: ufna от Июль 24, 2009, 09:47 Когда у тебя вызывается слот, объект label не создан. Т.к. ты его не создаешь, потому как
Код не имеет ничего общего с MyDialog::label Правильно будет: Код
Название: Re: простейший вопрос по QLabel и соnnect Отправлено: pastor от Июль 24, 2009, 09:48 Классика.
Объяви label членом класса. И немного измени конструктор: Код
Название: Re: простейший вопрос по QLabel и соnnect Отправлено: Silence от Июль 24, 2009, 09:49 Название: Re: простейший вопрос по QLabel и соnnect Отправлено: Silence от Июль 24, 2009, 09:59 Классика. ребята, спасибо! не ленитесь даже на такие простые вопросы отвечать.. респект! Название: Re: простейший вопрос по QLabel и соnnect Отправлено: Silence от Июль 24, 2009, 13:49 еще глупый вопрос.. )
как это сделать без классов? просто на функциях.. как в функцию передавать адрес на label чтобы сменить его? понимаю, что в функции label не доступна.. как сделать доступ к изменению? Код
Название: Re: Вопрос 2: простейший вопрос по QLabel и соnnect без классов. Отправлено: Khs от Июль 24, 2009, 14:15 мне кажется надо почитать маны по программированию, ибо чувствую что дальше от тебя будет Вопрос N, где N - неопределен :)
Название: Re: Вопрос 2: простейший вопрос по QLabel и соnnect без классов. Отправлено: Silence от Июль 24, 2009, 14:17 мне кажется надо почитать маны по программированию, ибо чувствую что дальше от тебя будет Вопрос N, где N - неопределен :) да, этим и постоянно занимаюсь.. скачал книг. читаю.. листаю форумы.. читаю доки.. енглиш форумы рою.. но именно это пока не нашёл.. сорри ) Название: Re: Вопрос 2: простейший вопрос по QLabel и соnnect без классов. Отправлено: Silence от Июль 24, 2009, 14:21 мне кажется надо почитать маны по программированию, ибо чувствую что дальше от тебя будет Вопрос N, где N - неопределен :) надеюсь на опыт других новичков, которым будет не сложно ответить на мои новичковые вопросики ) спасибо ) мир не без добрых людей ) Название: Re: простейший вопрос по QLabel и соnnect Отправлено: pastor от Июль 24, 2009, 14:31 как это сделать без классов? просто на функциях.. В данном случае никак Название: Re: Вопрос 2: простейший вопрос по QLabel и соnnect без классов. Отправлено: Авварон от Июль 24, 2009, 14:33 почему же - сделать QLabel глобальной переменной, но это очень плохой стиль программирования
Название: Re: Вопрос 2: простейший вопрос по QLabel и соnnect без классов. Отправлено: Silence от Июль 24, 2009, 14:36 почему же - сделать QLabel глобальной переменной, но это очень плохой стиль программирования да, согласен - ужасный ) но для той задачи, что нужно сделать - вполне достаточно.. пробовал уже через глобальные - переносил QLabel *label = new QLabel; наверх. ошибок не показывает... но если запускать экзешник - просто ничего не выдается.. окошко виджета не открывается даже ) Название: Re: Вопрос 2: простейший вопрос по QLabel и соnnect без классов. Отправлено: denka от Июль 24, 2009, 14:39 почему же - сделать QLabel глобальной переменной, но это очень плохой стиль программирования И куда мы слот прилепим? :) почему же - сделать QLabel глобальной переменной, но это очень плохой стиль программирования да, согласен - ужасный ) но для той задачи, что нужно сделать - вполне достаточно.. пробовал уже через глобальные - переносил QLabel *label = new QLabel; наверх. ошибок не показывает... но если запускать экзешник - просто ничего не выдается.. окошко виджета не открывается даже ) Читай здесь http://doc.qtsoftware.com/4.5/signalsandslots.html (http://doc.qtsoftware.com/4.5/signalsandslots.html). Слот должен быть обязательно членом класса унаследованного от QObject. Так же класс должен содержать макросс Q_OBJECT Название: Re: Вопрос 2: простейший вопрос по QLabel и соnnect без классов. Отправлено: Авварон от Июль 24, 2009, 16:23 сдается мне нужно перенести в глобальные объявление переменной, а инициализацию оставить там где было (иначе она создается до QApplication'а, что, наверное, нехорошо)
Название: Re: Вопрос 2: простейший вопрос по QLabel и соnnect без классов. Отправлено: pastor от Июль 24, 2009, 20:54 почему же - сделать QLabel глобальной переменной, но это очень плохой стиль программирования Я имел ввиду объявления слота вне класса |