Java開發桌面程序學習(10)——css樣式表使用以及Button使用


css

樣式表使用

javafx中的css樣式,與html的有些不一樣,javafx中的css,是以-fx-background-color這種樣子的,具體可以參考文檔JavaFx css官方文檔

簡單來說,普通的javafx,以
javafx中,css樣式有兩種使用方法

  • 直接在fxml中使用
  • fxml引用css文件

fxml直接使用樣式

在某個控件中使用style屬性即可

<Text layoutX="235.0" layoutY="173.0" style="-fx-background-color: black">hello</Text>

直接在scenebuilder中也可以定義

fxml引用css

在根布局的標簽中使用stylesheets屬性,記得有個@符號

stylesheets="@button.css" 

選擇器

css中的選擇器,學過css都不陌生,有id選擇器,標簽選擇器,類選擇器和層級選擇器

不過,javafx中的css,有些不一樣,下面給幾個例子

  • id選擇器
    上圖中定義id,之后在css中就可以使用
#menu{
    -fx-background-color: #bfdbff;
}
  • 標簽選擇器
button{
	-fx-background-color: #bfdbff;
}
  • 類選擇器
    需要定義上圖中的style class,名字隨意,不過,css中寫的的時候與其保持一致
.mybutton{
	-fx-background-color: #bfdbff;
}
  • 層級選擇器
    上面的三種可能還不能滿足要求,所以,還有個層級選擇器
/*把id為menu下面的button全部背景設置為#bfdbff*/
#menu button{
    -fx-background-color: #bfdbff;
}

PS:需要注意的一點是,如果是駝峰命名法,則需要加-
例如:

/*VBox為類名,所以得寫成v-box*/
/*JFXButton為類名,所以得寫成jfx-button*/
/*按照此規則*/
v-box{
	
}

Button的使用

以下出現的屬性,可以使用代碼進行動態設置

Button懸浮效果實現

css文件中,引用id前面得加#,引用標簽,則加.

我們可以使用css的偽標簽來實現

默認為綠色,鼠標滑動到按鈕,按鈕會變為藍色。點擊按鈕,按鈕會變為白色,效果如下

.button{
    -fx-background-color: green;
}

.button:hover{
    -fx-background-color: blue;
}


.button:focused{
    -fx-background-color: white;
}

button 圖片加文字

一直以為只能通過代碼的方式,往按鈕中添加圖片。其實,通過fxml也可以直接往按鈕中放入一個ImageView,設置圖片的路徑,就可以預覽界面了。

但是,如果想改圖片的位置,怎么修改呢?有一個屬性,名為content display,通過此可以改變圖片顯示的位置

button 豎排按鈕實現

如果想要實現豎排按鈕,得先修改按鈕的寬度(固定一個較小數值),高度就不修改了,就是隨內容變化大小,之后把wrap text屬性勾選上,這樣,就會自動換行

效果如下:

設置居中:

PS:如果想要只顯示一個字母,可以調整button的寬度(width)和圖片的大小


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM