[英]QInputDialog doesn't show title and border in android application
我編寫了一個簡單的slot函數來顯示輸入對話框。 但它在Android模擬器中顯示如下。 代碼是:
void PriceChecker::showSettings()
{
QInputDialog UrlDialog;
QString baseUrl = UrlDialog.getText(m_pMainWidget, "Settings", "Enter BaseURL");
}
有人可以告訴為什么會這樣嗎?
它針對所有正在顯示的基於QDialog的小部件執行此操作。 他們從來沒有邊框或標題欄...除了QMessageBox。
QMessageBox
>顯示標題和邊框 QInputDialog
>顯示沒有標題和邊框 QDialog
>顯示沒有標題和邊框 我通過在QApplication::notify
捕獲QEvent::ShowToParent
事件並使對話框即將顯示的大小適合主框架大小來解決該問題,然后覆蓋整個屏幕。 至少控件不與主機控件混在一起。...
注意:我提交了這個Qtbug: https ://bugreports.qt-project.org/browse/QTBUG-39623
...或者這是我的宿主應用程序的自定義樣式的問題(因為我在做插件),或者在Windows上是相同的;
無論如何,可以通過顯式設置以下窗口標志來輕松解決:
QInputDialog d;
Qt::WindowFlags f = d.windowFlags();
f |= Qt::Dialog;
d.setWindowFlags(f);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.