Comment faites-vous la force de java swt programme de “passer à l'avant-plan”?

Actuellement avec swt, j'ai parfois envie d'un programme, de façon arbitraire, au premier plan (comme un réveil pourrait).

Généralement les ouvrages suivants (jruby):

@shell.setMinimized(false)
@shell.forceActive

Cela apporte de la coque à l'avant si elle a été réduite au minimum.

La création d'un nouveau shell, à tout moment, aussi à l' (nouveau shell) à l'avant.

C'est très bien, cependant, si la coque est pas réduite au minimum, le code ci-dessus, l'écran clignote (clignote) l'icône de l'application dans la barre des tâches. Eh bien en fait la première fois que vous l'exécutez, il l'amène à l'avant. Après ça, c'clignote dans la barre des tâches. C'est windows. Sur Linux il semble que clignote dans la barre des tâches (ubuntu par défaut).

Quelqu'un sait d'une croix-plate-forme de manière à obtenir des app de venir à l'avant, en swt?

Il semble qu'aucune incantation de forceActive setActive setMinimized(faux) setFocus forceFocus et setVisible peut accomplir cette chose.

Je suis sûr que c'est possible (au moins sous windows), que l'adresse de l'Éditeur de Texte est-il. Eh bien, ce n'est pas swt, mais au moins certaines autres applications ont été connus pour faire.

Je pense, c'est peut-être swt bug 192036?

Merci beaucoup.

Connexes:

  • Ressemble à la SWT bug lié à exactement décrit votre problème, et il semble qu'ils ne vont pas être en mesure de le réparer.
  • Je pense que c'est en effet le problème pour windows-bonne prise. Contourner pour l'instant est d'abord de réduire un shell puis d'agrandir (ou utiliser du code natif [via ffi ou jni] pour forceForeGround il). Dans Linux, je ne suis pas sûr que le problème est bien (juste clignote dans la barre des tâches). Il pourrait être corrigé dans les versions plus récentes de swt.jar >= 3.5 bugs.eclipse.org/bugs/show_bug.cgi?id=244597
InformationsquelleAutor rogerdpack | 2010-02-23