本文整理汇总了C++中QWebPageClient::setInputMethodEnabled方法的典型用法代码示例。如果您正苦于以下问题:C++ QWebPageClient::setInputMethodEnabled方法的具体用法?C++ QWebPageClient::setInputMethodEnabled怎么用?C++ QWebPageClient::setInputMethodEnabled使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类QWebPageClient
的用法示例。
在下文中一共展示了QWebPageClient::setInputMethodEnabled方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: setInputMethodState
void EditorClientQt::setInputMethodState(bool active)
{
QWebPageClient* webPageClient = m_page->d->client;
if (webPageClient) {
#if QT_VERSION >= 0x040600
// Make sure to reset input method hint
webPageClient->setInputMethodHint(Qt::ImhDialableCharactersOnly, false);
webPageClient->setInputMethodHint(Qt::ImhDigitsOnly, false);
webPageClient->setInputMethodHint(Qt::ImhEmailCharactersOnly, false);
webPageClient->setInputMethodHint(Qt::ImhUrlCharactersOnly, false);
webPageClient->setInputMethodHint(Qt::ImhHiddenText, false);
HTMLInputElement* inputElement = 0;
Frame* frame = m_page->d->page->focusController()->focusedOrMainFrame();
if (frame && frame->document() && frame->document()->focusedNode())
if (frame->document()->focusedNode()->hasTagName(HTMLNames::inputTag))
inputElement = static_cast<HTMLInputElement*>(frame->document()->focusedNode());
if (inputElement) {
// Set input method hints for "number", "tel", "email", "url" and "password" input elements.
webPageClient->setInputMethodHint(Qt::ImhDialableCharactersOnly, inputElement->isTelephoneField());
webPageClient->setInputMethodHint(Qt::ImhDigitsOnly, inputElement->isNumberField());
webPageClient->setInputMethodHint(Qt::ImhEmailCharactersOnly, inputElement->isEmailField());
webPageClient->setInputMethodHint(Qt::ImhUrlCharactersOnly, inputElement->isUrlField());
// Setting the Qt::WA_InputMethodEnabled attribute true and Qt::ImhHiddenText flag
// for password fields. The Qt platform is responsible for determining which widget
// will receive input method events for password fields.
bool isPasswordField = inputElement->isPasswordField();
webPageClient->setInputMethodHint(Qt::ImhHiddenText, isPasswordField);
if (isPasswordField)
active = true;
}
#if defined(Q_WS_MAEMO_5) || defined(Q_OS_SYMBIAN)
// disables auto-uppercase and predictive text for mobile devices
webPageClient->setInputMethodHint(Qt::ImhNoAutoUppercase, true);
webPageClient->setInputMethodHint(Qt::ImhNoPredictiveText, true);
#endif // Q_WS_MAEMO_5 || Q_OS_SYMBIAN
#endif // QT_VERSION check
webPageClient->setInputMethodEnabled(active);
}
emit m_page->microFocusChanged();
}
示例2: setInputMethodState
void EditorClientQt::setInputMethodState(bool active)
{
QWebPageClient* webPageClient = m_page->client.data();
if (webPageClient) {
Qt::InputMethodHints hints;
HTMLInputElement* inputElement = 0;
Frame* frame = m_page->page->focusController()->focusedOrMainFrame();
if (frame && frame->document() && frame->document()->focusedNode())
if (frame->document()->focusedNode()->hasTagName(HTMLNames::inputTag))
inputElement = static_cast<HTMLInputElement*>(frame->document()->focusedNode());
if (inputElement) {
// Set input method hints for "number", "tel", "email", "url" and "password" input elements.
if (inputElement->isTelephoneField())
hints |= Qt::ImhDialableCharactersOnly;
if (inputElement->isNumberField())
hints |= Qt::ImhDigitsOnly;
if (inputElement->isEmailField())
hints |= Qt::ImhEmailCharactersOnly;
if (inputElement->isURLField())
hints |= Qt::ImhUrlCharactersOnly;
// Setting the Qt::WA_InputMethodEnabled attribute true and Qt::ImhHiddenText flag
// for password fields. The Qt platform is responsible for determining which widget
// will receive input method events for password fields.
if (inputElement->isPasswordField()) {
active = true;
hints |= Qt::ImhHiddenText;
}
}
webPageClient->setInputMethodHints(hints);
webPageClient->setInputMethodEnabled(active);
}
emit m_page->microFocusChanged();
}