2012-08-20 4 views
4

J'essaie de changer la taille des boutons radio dans ma version de l'application avec FXML et CSS. J'utilise sceneBuilder.Javafx 2.0: Comment changer la taille du cercle des boutons radio avec CSS?

Merci pour votre aide!

Voici mon code CSS réel pour les boutons radio-:

.radio-button .radio{ 
-fx-border-width  : 1px ; 
-fx-border-color  : #000 ; 
-fx-background-color : white ; 
-fx-background-image : null ; 
-fx-border-radius : 15px ; 
-fx-height   : 15px ; /* Not working */ 
height    : 5px ; /* Not working */ 
} 
.radio-button .radio:selected{ 
-fx-background-color : white ; 
-fx-background-image : null ; 
} 
.radio-button -radio:armed{ 
-fx-background-color : white ; 
-fx-background-image : null ; 
} 
.radio-button -radio:determinate{ 
-fx-background-color : white ; 
-fx-background-image : null ; 
} 
.radio-button -radio:indeterminate{ 
-fx-background-color : white ; 
-fx-background-image : null ; 
} 

Répondre

7

-fx-padding: 10px;

Une valeur de remplissage unique signifie que tout le rembourrage sont les mêmes, si un ensemble de quatre valeurs de remplissage est spécifiée, Ils sont utilisés pour les bords supérieur, droit, inférieur et gauche de la région.

du JavaFX CSS Reference Guide

Exemple:

CssTest.java

import javafx.application.Application; 
import javafx.scene.Scene; 
import javafx.scene.control.RadioButton; 
import javafx.scene.layout.BorderPane; 
import javafx.stage.Stage; 

public class CssTest extends Application 
{ 
    public void start(Stage stage) throws Exception 
    { 
     BorderPane root = new BorderPane(); 
     RadioButton radio = new RadioButton("radio-text"); 
     root.setCenter(radio); 
     root.getStylesheets().add(getClass().getResource("/radio.css").toExternalForm()); 
     stage.setScene(new Scene(root)); 
     stage.show(); 
    } 

    public static void main(String[] args) 
    { 
     launch(args); 
    } 
} 

radio.css

.radio-button .radio { 
    -fx-border-width: 1px; 
    -fx-border-color: #000; 
    -fx-background-color: white; 
    -fx-background-image: null; 
    -fx-border-radius: 15px; 
    -fx-padding: 4px; 
} 
.radio-button .radio:selected { 
    -fx-background-color: white; 
    -fx-background-image: null; 
} 
.radio-button -radio:armed { 
    -fx-background-color: white; 
    -fx-background-image: null; 
} 
.radio-button -radio:determinate { 
    -fx-background-color: white; 
    -fx-background-image: null; 
} 
.radio-button -radio:indeterminate { 
    -fx-background-color: white; 
    -fx-background-image: null; 
} 
.radio-button .dot { 
    -fx-background-radius: 15px; 
    -fx-padding: 8px; 
} 

résultat

Styled JavaFX RadioButton

Pour les thèmes JavaFX CSS plus d'inspiration, consultez win7glass.css de GreggSetzer/JavaFX-CSS-Themes

+0

merci, mais il ne me permet pas de changer la taille de la case à cocher et les boutons radio- –

+0

Je l'ai essayé et cela a fonctionné , Je vais ajouter un exemple avec des résultats .. – Tangocoder

+0

Bel échantillon, fonctionne bien. – jewelsea