crossplatform.ru

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

5 страниц V  « < 2 3 4 5 >  
Тема закрытаНачать новую тему
> Есть ли метод, чтобы узнать соединен ли сигнал со слотом?, и если соединен то сколько раз?
berserk
  опции профиля:
сообщение 11.2.2009, 11:41
Сообщение #31


Студент
*

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

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




Репутация:   0  


Цитата(kwisp @ 11.2.2009, 9:59) *
berserk,
примерчик подскажешь, мне уже не нужно, просто ради интерса....


Книжка "QT. Профессиональное программирование на С++" стр 45 (немного под себя только модифицировать). Больше примеров не знаю... Самому написать щас некогда.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 11.2.2009, 11:56
Сообщение #32


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

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




Репутация:   23  


Цитата(berserk @ 11.2.2009, 11:41) *
Книжка "QT. Профессиональное программирование на С++" стр 45 (немного под себя только модифицировать). Больше примеров не знаю... Самому написать щас некогда.


совршенно случайно книга на столе оказалась. не понял твоей идеи.
можешь поподробнее свои мысли изложить???
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
berserk
  опции профиля:
сообщение 11.2.2009, 12:01
Сообщение #33


Студент
*

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

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




Репутация:   0  


Цитата(kwisp @ 11.2.2009, 11:56) *
Цитата(berserk @ 11.2.2009, 11:41) *
Книжка "QT. Профессиональное программирование на С++" стр 45 (немного под себя только модифицировать). Больше примеров не знаю... Самому написать щас некогда.


совршенно случайно книга на столе оказалась. не понял твоей идеи.
можешь поподробнее свои мысли изложить???

сколько конектов произошло, столько раз и слот получит сигнал (в слоте счётчик), но если нужно посчитать сколько коннектов было с конкретным сигналом такой способ не пойдёт...

ЗЫ: если я правильно понял задачу
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 11.2.2009, 12:05
Сообщение #34


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

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




Репутация:   23  


berserk,
думаю счетчик в слоте ничем не поможет. ну выяснил ты что сигнал вызывает слот 2 или третий раз что не выполнишь действия которые в слоте? а после разъединения счетчик в слоте надо будет сбрасывать...
както не доконца понятна идея....
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
berserk
  опции профиля:
сообщение 11.2.2009, 12:13
Сообщение #35


Студент
*

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

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




Репутация:   0  


Цитата(kwisp @ 11.2.2009, 12:05) *
berserk,
думаю счетчик в слоте ничем не поможет. ну выяснил ты что сигнал вызывает слот 2 или третий раз что не выполнишь действия которые в слоте? а после разъединения счетчик в слоте надо будет сбрасывать...
както не доконца понятна идея....


Ну может и неправильно :( , я 2 дня как qt изучаю...
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Константин
  опции профиля:
сообщение 11.2.2009, 12:25
Сообщение #36


Студент
*

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

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




Репутация:   1  


"а почему бы и нет?" - странное обоснование...неизбежно напорется на вопрос "а зачем?".
и мне тоже интересно "а зачем?". какой смысл отрабатывать слот по десять раз на одно(!) событие? а если сигнализирующие объекты разные, то какой смысл их считать?
не забываем дисконнектить то, что сами же и сконнектили - и таких потребностей не будет возникать. а пичкать библиотеку функционалом для забывчивых - неблагодарное (и ненужное) занятие.

Цитата
олучается надо просто написать ИЗБЕГАЙТЕ РЕАЛИЗАЦИИ ДИНАМИЧЕСКОЙ МАШИНЫ СОСТОЯНИЙ с помощью сигналов и слотов дабы избежать проблем с много кратным соединением.
используйте колбэки что угодно но не сигналы и слоты даже если соединения редко используемые.

к чему крайности? а то проще написать ИЗБЕГАЙТЕ ИСПОЛЬЗОВАНИЯ КУТЭ В СВОИХ ПРОЕКТАХ. а можно и проще - ИЗБЕГАЙТЕ ПРОГРАММИРОВАНИЯ...
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 11.2.2009, 12:48
Сообщение #37


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

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




Репутация:   23  


Константин,
>какой смысл отрабатывать слот по десять раз на одно(!) событие?

действительно если ты соединил случайно два раза один и тот же сигнал с одним и тем же слотом зачем отрабаотывать 2 раз.??? а так сделали трольтехи! вот зачем это не понятно.
т.е. в соединении присутствует не только тот факт что соединено или нет(логика bool) а соединено и сколько раз соединено(уже сложнее).

почему не могу узнать сколько раз соединено???
почему не могу узнать соединенно ли вообще???

вот это точно крайности, к чему это?
Цитата
ИЗБЕГАЙТЕ ИСПОЛЬЗОВАНИЯ КУТЭ В СВОИХ ПРОЕКТАХ. а можно и проще - ИЗБЕГАЙТЕ ПРОГРАММИРОВАНИЯ...


ты же избегаешь много кратного соединения, не так ли???
к чему наша дисскусия?. я предлагаю её прекратить.
кто хочет будет использовать динамическое соединение разъединение и будет считать свои соединения сам.


все что хотел по теме сказать сказал.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kuler
  опции профиля:
сообщение 11.2.2009, 13:06
Сообщение #38


Танцор диско
***

Группа: Участник
Сообщений: 441
Регистрация: 11.9.2008
Из: Москва
Пользователь №: 289

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




Репутация:   -1  


Цитата(kwisp @ 11.2.2009, 11:35) *
они взялись реализовать сигналы слоты взялись сделать как коннект так и дисконнект ну и уже бы и предоставили возможность узнать сколько соединений

а еще в qtablewidget нельзя узнать есть ли столбец с заданным названием. К чему я это? к тому что не все сделано как нада и полностью. Некоторые вещи еще и глючат
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Константин
  опции профиля:
сообщение 11.2.2009, 13:12
Сообщение #39


Студент
*

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

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




Репутация:   1  


Цитата(kwisp @ 11.2.2009, 12:48) *
узнать соединенно ли вообще

QObject::connectNotify(...)

Цитата(kwisp @ 11.2.2009, 12:48) *
ты же избегаешь много кратного соединения, не так ли???

а ты и не писал про "избегайте многократных соединений", изречение было иным.

Цитата(kwisp @ 11.2.2009, 12:48) *
если ты соединил случайно два раза один и тот же сигнал с одним и тем же слотом зачем отрабаотывать 2 раз.?

для конечных состояний не должно быть случайностей. либо ты соединил, либо нет. соединил два раза - тебе виднее, но и эффект получишь для двух раз. а вот зачем считать сколько раз ты соединил, если соединял вручную? ты же не соединяешь сигнал со слотом в соответствии с гороскопом или "была-не-была".

тема бессмысленна с самого начала

Цитата(kuler @ 11.2.2009, 13:06) *
а еще в qtablewidget нельзя узнать есть ли столбец с заданным названием.

возьми модель-источник и пройдись по заголовкам. или проблема в том, что нет готовой функции?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
SABROG
  опции профиля:
сообщение 11.2.2009, 13:29
Сообщение #40


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

Группа: Участник
Сообщений: 1207
Регистрация: 8.12.2008
Из: Russia, Moscow
Пользователь №: 446

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




Репутация:   34  


Цитата(Константин @ 11.2.2009, 13:12) *
возьми модель-источник и пройдись по заголовкам. или проблема в том, что нет готовой функции?


Это имхо специфичная задача, для чего создавать такой метод мне не понятно.

    QTableWidgetItem *item;
    for (int i=0, int cols = tableWidget->columnCount(); i < cols; i++)
    {
        item = tableWidget->horizontalHeaderItem(i);
        if (!item->text().compare(QLatin1String("header col 1")))
        {
            qDebug() << "header is presented";
            break;
        }
    }
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

5 страниц V  « < 2 3 4 5 >
Тема закрытаНачать новую тему
Теги
Нет тегов для показа


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




RSS Текстовая версия Сейчас: 30.11.2024, 9:33