Не давай проще. Есть окно, в нем куча кнопочек, кнопкам

заданы горячие клавиши?

8 ответов

9 просмотров

Да, примерно такая схема

BAHR- Автор вопроса
我が名はレギオン
Да, примерно такая схема

Так. А что значит QAction ворует события? У тебя на одни клавиши назначены несколько действий?

BAHR
Так. А что значит QAction ворует события? У тебя н...

Есть и несколько действий, есть и такие, где нет других действий, но при отсутствии фокуса на виджете, я бы не хотел их обратаывать.

BAHR- Автор вопроса
我が名はレギオン
Есть и несколько действий, есть и такие, где нет д...

Можешь вот этот момент поподробнее расписать, например: Есть две кнопки А, В при нажатии Ctrl + A должно срабатывать действие А, но только в случае если фокус у копки А, во всех остальных случаях должно выполняться действие В Не уверен, что смогу тебе чем-то помочь, но поставленный так вопрос быстрее найдет ответ.

BAHR
Можешь вот этот момент поподробнее расписать, напр...

Все так, только фокус не у кнопоки, а у виджета, на котором она находится. Кнопки может и не быть, просто шорткат через QAction с родителем в виде виджета

BAHR- Автор вопроса
我が名はレギオン
Все так, только фокус не у кнопоки, а у виджета, н...

грубо говоря: auto widget = new QWidget(); auto action = new QAction(widget); action->setShortcut(Qt::CTRL + Qt::Key_A); connect(action, &QAction::triggered, this, [&action](){ auto widget = qobject_cast<QWidget *>(action->parent()); if(widget != nullptr && widget->hasFocus()){ functionA(); } }); Если с лямдой не устраивает, то action можно получить из sender();

BAHR
грубо говоря: auto widget = new QWidget(); aut...

Спасибо за пример, я думал что-то вроде такого написать, но думал может есть покрасивее решения

BAHR- Автор вопроса
我が名はレギオン
Спасибо за пример, я думал что-то вроде такого нап...

Да... Но при таком подходе QKeyEvent смотрится более правильным подходом, так-как отработает только когда виджет в фокусе по умолчанию😂

Похожие вопросы

Обсуждают сегодня

if (user?.choseType === 'oneDay') { await ctx.reply( 'Добро пожаловать в команду «Магнита»! Правда, на один день ☺️ ', ); await ctx.s...
Kokni
1
Читаю сейчас [нет, уже больше не читаю!] курсовую о Булгакове, написанную, похоже, с помощью ChatGPT. Это удивительный психоделический опыт. Текст в основном написан в стиле б...
✨ Uni [🌊 В отпуске]
1
Это фейк @cruppto_newbot?
Antskup
13
всем салют сегодня утро заметил что бот не может отправлять фотки по url. ручками в браузере ссылка норм открывает фотки. падает ошибка 'Bad Request: failed to send message ...
Vasya Ivanov
9
ребят, привет. за какое время бот полученную заявку на вступление в группу может принять \отклонить? Помню речь была про 5 минут, сейчас как?
Роман Ромашин :)
10
Доброго времени суток. Правильно ли я понимаю, что с введением новой платежной единицы stars, я просто могу оставить текущую платёжку от Юкассы, которая выполняется на сайте с...
Prokhor Chulkov
7
вопрос: кто как решает вопрос с динамической подгрузкой скриптов для отдельных страниц с включенным turbo router?
Sergei Toroptsev
25
Добрый день! Не подскажете как к модели Категории Шопоголика добавить отношение Тейлора. Пробовал по документации, но не получается. Мб уже кто-то делал?
Николай Афанасенко
6
Сonst magicTgHTML = (text, entities) => { let processedText = text; let offsetShift = 0; entities.forEach(entity => { const { offset, length, type, url, ...
Андрей
1
@veranikaEU получилось? Можно увидеть рабочий код?
Alex Kom
8
Карта сайта