Виртуальная клавиатура в Linux/GTK

У меня простой интерфейс (может быть сенсорным или управляться щелчками мыши). Когда я выбираю текстовое поле, должна появиться виртуальная клавиатура. Я немного покопался, и xvkbd выглядит неплохо. X11 — единственная зависимость, и это нормально! Однако я не хочу устанавливать в систему клавиатуру и вызывать ее для выдачи команд или установки переменных среды. Я хочу, чтобы клавиатура была частью приложения, которое я делаю, и она должна появляться, когда я запускаю приложение и выбираю текстовое поле, и ни при каких других обстоятельствах. Насколько я понимаю, кодирование виртуальной клавиатуры с нуля — не самая простая задача. Если есть что-то, что я мог бы использовать в своем приложении на C++, это было бы очень здорово. Пожалуйста, порекомендуйте.


person Subhamoy S.    schedule 08.10.2012    source источник


Ответы (2)


Проверьте matchbox-keyboard, он должен делать то, что вам нужно с gtk.

Взято из его README.

Встраивание

Вы можете встраивать matchbox-keyboard в другие приложения с помощью наборов инструментов, поддерживающих протокол XEMBED (например, GTK2).

См. examples/matchbox-keyboard-gtk-embed.c, чтобы узнать, как это делается.

person Ottavio Campana    schedule 08.10.2012
comment
Спасибо за приятный комментарий! Однако с этой клавиатурой, похоже, связано много сложностей. Я разместил вопрос об этом здесь и надеюсь, что скоро получу ответ! - person Subhamoy S.; 09.10.2012

Вы можете использовать QX11EmbedContainer, если у вас есть доступ к Qt. Если нет, вы можете встроить окно xvkbd самостоятельно (см. здесь как).

person BЈовић    schedule 08.10.2012