Я делаю приложение с использованием C++ Qt Framework. Проблема, которую я имею на данный момент, похожа на отправку формы. Мне нужно добавить клиента в систему. Поэтому, когда вы нажимаете кнопку «Добавить клиент», ему необходимо отправить текст из QLineEdit и QDate из QDateEdit в функцию.Не удается заставить QSignalMapper работать
Чем больше я исследовал, тем больше кажется, что мне нужно использовать QSingalMapper, но я не могу заставить его работать вообще.
Вот фрагмент кода, который я пытался использовать первым. У меня есть структура данных клиента с датой имени и присоединения, которую необходимо отправить. Тем не менее, я могу создать объект Client и передать его в качестве параметра insead, если это лучшая идея.
QObject::connect(addClientBtn, SIGNAL(clicked()), this, SLOT(addClient(clientName->text(), joiningDate->date())));
Когда я пытался использовать QSignalMapper, он продолжал говорить мне, что я не могу отправить объект клиента, так как его не типа QString, Widget * и т.д.
Есть ли может быть более простой способ сделать это, что я упустил? Любая помощь будет принята с благодарностью.
Я не знаю, почему вы беспокоитесь о картотеке сигналов в таком случае. Просто подключите сигнал 'clicked' вашей кнопки к некоторому слоту, где вы либо испускаете другой сигнал, либо просто вызываете нужную функцию напрямую. – thuga