本文整理汇总了C#中Qyoto.QWidget.MapToGlobal方法的典型用法代码示例。如果您正苦于以下问题:C# QWidget.MapToGlobal方法的具体用法?C# QWidget.MapToGlobal怎么用?C# QWidget.MapToGlobal使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Qyoto.QWidget
的用法示例。
在下文中一共展示了QWidget.MapToGlobal方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ShowAccountSelectMenu
public static Account ShowAccountSelectMenu(QWidget attachWidget)
{
AccountService accountService = ServiceManager.Get<AccountService>();
if (accountService.ConnectedAccounts.Count == 0) {
var widget = (attachWidget != null) ? attachWidget.TopLevelWidget() : Gui.MainWindow;
QMessageBox.Critical(widget, "Synapse", "You are not connected.");
return null;
}
Account selectedAccount = null;
if (accountService.ConnectedAccounts.Count > 1) {
QMenu menu = new QMenu();
menu.AddAction("Select Account:").SetDisabled(true);
foreach (Account account in accountService.ConnectedAccounts) {
QAction action = menu.AddAction(account.Jid.ToString());
if (menu.ActiveAction() == null)
menu.SetActiveAction(action);
}
var pos = (attachWidget != null) ? attachWidget.MapToGlobal(new QPoint(0, attachWidget.Height())) : QCursor.Pos();
QAction selectedAction = menu.Exec(pos);
if (selectedAction != null) {
selectedAccount = accountService.GetAccount(new jabber.JID(selectedAction.Text));
}
} else {
selectedAccount = accountService.ConnectedAccounts[0];
}
return selectedAccount;
}