Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++ Qt
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.77
flerris
3 / 3 / 1
Регистрация: 17.08.2012
Сообщений: 145
#1

Узнать номер виджета, отправившего сигнал QObject::sender - C++ Qt

09.10.2012, 12:46. Просмотров 2037. Ответов 1
Метки нет (Все метки)

Здравствуйте.
Я хочу, чтобы при нажатии на save в приложении у меня перезаписывались только изменённые строки.Сделала, с помощью QObject::sender.Приконнектила к текстедитам слот, который ловит отправителя, Чтобы перезаписать только определённые строки нужен номер текстедита,который был изменён.TextEditы создаются динамически, Как получить номера?

C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
,,,
QTextEdit*  textedits[abc];
    textedits[abc]=new QTextEdit();    
    for (int i=0;i<abc;i++){        
        QString text=MandatoryLine[i].mid(32);
        textedits[i]=new QTextEdit(text,this);        
        textedits[i]->setMinimumHeight(30);
        textedits[i]->updateGeometry();
        connect(textedits[i],SIGNAL(textChanged()),this,SLOT(myreplace(/*i*/)));  //хотела передавать i здесь, но это неправильно само собой
        qvbTextEdits->addWidget(textedits[i]);
    }
 
 
void MyPro::myreplace(/*int sig*/){
    QTextEdit *textedit=(QTextEdit*)sender();
    int e=textedit->; //здесь бы как-то получать номер
}
или может вообще есть лучший способ?
я недавно этим занимаюсь и знаю что всё может быть ужасно непродуманно/неэффективно и тд,
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.10.2012, 12:46
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Узнать номер виджета, отправившего сигнал QObject::sender (C++ Qt):

sender into QObject::connect()
Имеется следующее описаниеQObject::connect(date, SIGNAL(dateChanged(QDate)),...

Безопасный вызов QObject::sender() в асинхронных слотах
Доброго времени суток, Господа. Подскажите пожалуйста такой момент. Я заметил,...

Сигнал закрытия виджета
Здравствуйте! Есть игра змейка. Игровой цикл выглядит так - void...

QTableWidget сигнал изменения виджета в ячейке
Qt 4.8.4 Есть таблица QTableWidget данных на строчек 20 не более. В ячейки...

Как можно отловить сигнал "готовности" QObject?
Можно ли как-то получить сигнал о том, что создаваемый объект &quot;готов&quot; к работе?...

Есть ли такой сигнал, который вылетает при скроллинге скроллируемого виджета?
Собственно, сабж. Есть виджет (конкретно - QTreeView, но лучше для любого...

1
fasked
Эксперт С++
4976 / 2556 / 241
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
09.10.2012, 15:32 #2
flerris, QSignalMapper в помощь.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.10.2012, 15:32
Привет! Вот еще темы с решениями:

Как навести мышку на x,y внутри виджета относительно 0,0 виджета (левого верхнего угла виджета)?
Как навести мышку на x,y внутри виджета относительно 0,0 этого виджета (левого...

Узнать уникальное имя виджета
как я понял чтобы узнать уникальное имя надо пользоваться objectName() QString...

Как узнать координаты виджета относительно всего окна?
Добрый день, хочу узнать координаты виджета относительно всего монитора/окна....

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru