我正在嘗試將Sparkle添加到我的 Qt(Go 綁定)應(yīng)用程序中,以使其可以自動更新。問題:運行最新版本時沒有彈出對話框這是代碼:https://github.com/sparkle-project/Sparkle/blob/master/Sparkle/SUUIBasedUpdateDriver.m#L104作者指出的原因是NSAlert需要運行循環(huán)才能工作。我找到了一些文檔:https://wiki.qt.io/Application_Start-up_Patternshttps://developer.apple.com/documentation/appkit/nsapplication因此,據(jù)我了解,我們必須NSApplication在創(chuàng)建QApplication.void NSApplicationMain(int argc, char *argv[]) { [NSApplication sharedApplication]; [NSBundle loadNibNamed:@"myMain" owner:NSApp]; [NSApp run];}My Go 的主要功能是這樣的:func main() { widgets.NewQApplication(len(os.Args), os.Args) ... action := widgets.NewQMenuBar(nil).AddMenu2("").AddAction("Check for Updates...") // http://doc.qt.io/qt-5/qaction.html#MenuRole-enum action.SetMenuRole(widgets.QAction__ApplicationSpecificRole) action.ConnectTriggered(func(bool) { sparkle_checkUpdates() }) ... widgets.QApplication_Exec()}問題:如何從NSApplicationMain事件循環(huán)中啟動 Go 的主要功能?
- 0 回答
- 0 關(guān)注
- 102 瀏覽
添加回答
舉報
0/150
提交
取消