Domanda

quando uso il metodo setDefaultLookAndFeelDecorated (true) in Java perché la cornice appare a schermo intero quando ingrandisco la cornice? e come posso disabilitare la modalità a schermo intero in questo metodo?

È stato utile?

Soluzione

Se si imposta setDefaultLookAndFeelDecorated su true, le decorazioni vengono gestite dall'aspetto grafico; ciò significa che un aspetto grafico del sistema sia su Windows che su Mac (non ho Linux a portata di mano) conserva i bordi che ci si aspetterebbe da una finestra nativa, ad es. stare alla larga dalla barra delle applicazioni in Windows.

Quando si utilizza l'aspetto multipiattaforma, a.k.a. Metal, che è l'impostazione predefinita su Windows, la versione di Windows occuperà l'intero schermo, facendolo sembrare una finestra a schermo intero. Su Mac, il sistema operativo si rifiuta di regalare la propria barra del titolo e disegna un frame Metal completo (inclusa la barra del titolo) in una finestra nativa per Mac.

Quindi, in breve, se vuoi assicurarti che la barra delle applicazioni venga rispettata, usa il look-and-feel del sistema Windows su Windows. Puoi impostarlo usando qualcosa come

UIManager.setLookAndFeel((LookAndFeel) Class.forName(UIManager.getCrossPlatformLookAndFeelClassName()).newInstance());

Altri suggerimenti

Se non vuoi che il tuo JFrame sia massimizzato, allora chiama .setResizable (false); su di esso.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top