2017-06-29 186 views
0

因此,我使用JFrame在Eclipse中製作黑手黨遊戲 - 並且我想在JFrame中設置文本的位置。如何更改JFrame中JLabel的位置?

每當我使用setPositionX和setPositionY它不起作用!

有什麼建議嗎?

+0

你可以發佈你試過的代碼嗎?這將幫助我們幫助你。 – lucasvw

+0

顯示你的嘗試。 –

+0

佈局管理器,佈局屬性,邊距和空邊框 – MadProgrammer

回答

-2
Insets insets = panel.getInsets(); 
Dimension size =test.getPreferredSize(); 

// Just replace 10 & 0 according to X & Y position you want 
test.setBounds(10 + insets.left, 0 + insets.top, size.width, size.height); 
5

您不使用絕對座標放置組件。

您研究了layout managers的概念。然後你決定哪種類型的經理最能支持你的想法。

然後你讓該經理做所有UI元素的定位。其他任何事情基本上都是浪費時間。

含義:當然,您可以使用絕對值「手動」定位組件(請參閱here以獲取有關如何操作的說明)。

但是有一個問題:你花了很多時間來完美調整你的組件。然後你記得:「也許我必須讓我的用戶調整窗口大小。」然後大部分工作變得毫無用處;正如你很快想到的那樣:「當人們調整框架大小時,我希望這部分隨着它的增長/縮小而變化,而那部分應該保持不變」。長篇小說:絕對定位只適用於固定分辨率,固定窗口大小,固定字體大小,固定所有內容。基本上它把你固定在某個角落 - 離開那個角落是

所以簡單地避免這種情況;並學習如何使用一個(或幾個)佈局管理器爲您完成所有那些繁瑣的工作。