尝试在我的MyThread类中启动一个消息框,如下所示:
Object*
MyThread::Run(void)
{
AppLog("@ MyThread::Run(void)");
MessageBox messageBox;
messageBox.Construct(L"MessageBox Title", L"MessageBox Sample Code.", MSGBOX_STYLE_OK, 10000);
int modalResult = 0;
messageBox.ShowAndWait(modalResult);
return null;
}
创建并启动线程实例后不久,应用程序崩溃了。我们不能在我的UiApp中使用线程启动MessageBox吗?
此致
阿尼尔
答案 0 :(得分:1)
Tizen UI框架不是线程安全的。因此,只有主线程可以将事件分派给UI控件并与它们进行交互。这意味着必须始终在主线程中完成UI处理。
您无法在主线程以外的线程中创建和显示MessageBox。
如果您想从您创建的主题中显示某些内容,请在主题中使用线程中的SendUserEvent()和主线程中的OnUserEventReceivedN()。