Я много искал. Кажется, что нет никакого способа сравнения указателей функций. Лучшим решением, которое я получил, является инкапсуляция функции или закрытия в хешируемый объект. Например:
var handler:Handler = Handler(callback: { (message:String) in
//handler body
}))
Попытайтесь назвать.Activate () на Вашем главном окне, когда Ваш поток закроется.
Это никогда не было активно, и таким образом имеет низкий Z-порядок, таким образом, то независимо от того, что выше, естественно будет выше его. Я должен был исправить этот точный сценарий в нашем приложении.
не забывают! Вы, возможно, должны упорядочить вызов к корректному потоку с помощью Вызывания ()!
Я имел, это происходит время от времени также. Ответ Bob's является самым легким и работает на меня в большинстве случаев. Однако были несколько раз, где я должен использовать грубую силу. Сделайте это через interop как это:
[DllImport ("user32.dll")] общедоступный статический экстерн bool SetForegroundWindow (IntPtr hWnd);
Действительно ли экран-заставка является Модальным диалоговым окном?
я видел, что это окно 'переходит', если Вы отклоняете Модальное диалоговое окно дважды путем установки и DialogResult и вызова, Скрываются () или близко ().
Код как это:
private void button1_Click(object sender, System.EventArgs e)
{
this.DialogResult = DialogResult.Abort;
this.Hide();
}
См. этот запись в блоге для всех случаев...
Вы можете использовать такой код :
private void button1_Click(object sender, System.EventArgs e)
{
this.DialogResult = DialogResult.Abort;
this.Hide();
}
Спасибо всем!