webForumDet fria alternativet

JFrame MAX, MIN och STÄNG symboler

1 svar · 231 visningar · startad av miab02

miab02Medlem sedan sep. 20025 inlägg
#1

Hej,

Går det på något sätt att plocka bort MAX, MIN och STÄNG symbolerna i ett JFrame? i ett JInternalFrame kan man ange setClosable(false); men hur gör man i ett JFrame?

Jag vill ha bort dessa eftersom användaren bara skall kunna anväda menyn inte knapparna för att stänga fönstret.

(detta pga. att jag inte får min windowListner att fungera)

Jag försökte att göra följande när fönstret stängdes, men det gick inte. Får en massaa fel om att variablarna inte är intizierade. Fast dessa sätter jag innan i klasssen, behöver man sätta dem igen??


public void windowClosing ( WindowEvent e )  {

quitObject = new Quit();
bankPanel = new Bank(bet, bank, bankLabel, betLabel, submit, messageBox, quitObject);

button = new Buttons(hit,stand,doubleDown,split,deal, highScoreKnapp);
quitObject.setBank(bankPanel);
player = new Player(d);

	}

	public void windowActivated ( WindowEvent e )  {}
	public void windowDeactivated ( WindowEvent e )  {}
	public void windowOpened ( WindowEvent e )  {}
	public void windowClosed ( WindowEvent e )  {}
	public void windowIconified ( WindowEvent e )  {}
	public void windowDeiconified ( WindowEvent e )  {}
jmeMedlem sedan maj 20012 237 inlägg
#2

Hej!

För att hindra personer från att stänga din JFrame så använder du metoden

setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);

Då stängs inte fönstret när någon trycker på kryss-rutan.

Om du även vill att ingen skall kunna ändra på fönstrets storlek så kör du

setResizable(false);

WindowListener får du att fungera om du först implementerar WindowListener, dvs du lägger till "implements WindowListener" efter "public class VadNuDinKlassHeter"

Sedan så måste du koppla en WindowListener till din JFrame:

JFrame frame;

frame.addWindowListener(this);

Sedan så måste du skriva in alla metoder som din klasss implementerar från WindowListener och dessa ahr du ju gjort.
Dock så har du glömt en metod:

public void windowClosing(WindowEvent e) {}

Om du vill testa och se vad dessa metoder gör så kör en enkel System.out.println(); med passande text i varje metod.

Hoppas detta hjälpte lite...

129 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)