IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaFX Discussion :

Styles pour ScrollBar


Sujet :

JavaFX

  1. #1
    Membre émérite
    Avatar de Gouyon
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    1 137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 1 137
    Billets dans le blog
    5
    Par défaut Styles pour ScrollBar
    Bonjour

    Je souhaite modifier le style des scrollBar quis sont dans mon interface.
    Après pas mal de fouilles j'ai fini par trouver quelque chose qui me convient et que j'ai ensuite adapté
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    .scroll-bar:horizontal .decrement-button {
    -fx-pref-height:25.0px;
    -fx-pref-width:25.0px;
    -fx-background-color:blue;
    -fx-shape:"M1 0 L0 0.5 L1 1 L1 0 z"
    }
    .scroll-bar:horizontal .increment-button {
    -fx-pref-height:25.0px;
    -fx-pref-width:25.0px;
    -fx-background-color:red;
    -fx-shape:"M0 0 L1 0.5 L0 1 L0 0 z"
    }
    .scroll-bar:horizontal .track {
     
    -fx-background-color:linear-gradient(to right, blue,red);
     
    }
    Le problème c'est que tel que c'est mis dans mon fichier CSS ce srtyle s'appique à toutes les ScrollBar et notamment celles des ScrollPane et là ça devient très moche
    Du coup il faudrait que je puisse aplique ce style uniquement aux Scroll bar concernée mais j'ai un peu de mal à trouver comment faire
    Si quelqu'un peu me dépanner ça m'arrangerais bien
    Merci d'avance

  2. #2
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 900
    Billets dans le blog
    54
    Par défaut
    Ben tu peux donner un style de class particulier à tes barres de scroll ou à ton control.
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  3. #3
    Membre émérite
    Avatar de Gouyon
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    1 137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 1 137
    Billets dans le blog
    5
    Par défaut
    Citation Envoyé par bouye Voir le message
    Ben tu peux donner un style de class particulier à tes barres de scroll ou à ton control.
    Oui je me suis mal exprimé dans mon post. C'est bien ce type de solution que je pensais appliquer mais j'ai un peu de mal avec la syntaxe
    Je pensais faire un truc du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    #maScrollBar{
    scroll-bar:horizontal decrement-button {
    -fx-pref-height:25.0px;
    -fx-pref-width:25.0px;
    -fx-background-color:blue;
    -fx-shape:"M1 0 L0 0.5 L1 1 L1 0 z"
    }
    scroll-bar:horizontal increment-button {
    -fx-pref-height:25.0px;
    -fx-pref-width:25.0px;
    -fx-background-color:red;
    -fx-shape:"M0 0 L1 0.5 L0 1 L0 0 z"
    }
    scroll-bar:horizontal track {
     
    -fx-background-color:linear-gradient(to right, blue,red);
     
    }
    }
    Malheureusement ça ne fonctionne pas.

  4. #4
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 900
    Billets dans le blog
    54
    Par défaut
    Avec un . plutot qu'un # ?
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  5. #5
    Membre émérite
    Avatar de Gouyon
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    1 137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 1 137
    Billets dans le blog
    5
    Par défaut
    C'est pareil
    Seulement une partie du style est appliquée
    Il n'applique que le premier
    scroll-bar:horizontal decrement-button
    Mais pas le reste

  6. #6
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 900
    Billets dans le blog
    54
    Par défaut
    Aucun soucis pour moi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    package scrollbar;
     
    import java.util.Optional;
    import java.util.stream.Stream;
    import javafx.application.Application;
    import javafx.beans.binding.Bindings;
    import javafx.geometry.Orientation;
    import javafx.scene.Scene;
    import javafx.scene.control.ScrollBar;
    import javafx.scene.layout.Region;
    import javafx.scene.layout.StackPane;
    import javafx.scene.layout.TilePane;
    import javafx.stage.Stage;
     
    public final class Main extends Application {
     
        @Override
        public void start(Stage primaryStage) throws Exception {
            final ScrollBar scroll1 = new ScrollBar();
            final ScrollBar scroll2 = new ScrollBar();
            scroll2.getStyleClass().add("my-scroll-bar");
            final ScrollBar scroll3 = new ScrollBar();
            scroll3.setOrientation(Orientation.VERTICAL);
            final ScrollBar scroll4 = new ScrollBar();
            scroll4.setOrientation(Orientation.VERTICAL);
            scroll4.getStyleClass().add("my-scroll-bar");
            final TilePane root = new TilePane(scroll1, scroll2, scroll3, scroll4);
            root.setPrefRows(2);
            root.setPrefColumns(2);
            root.setHgap(3);
            root.setVgap(3);
            root.prefTileWidthProperty().bind(Bindings.subtract(Bindings.divide(root.widthProperty(), root.prefRowsProperty()), root.hgapProperty()));
            root.prefTileHeightProperty().bind(Bindings.subtract(Bindings.divide(root.heightProperty(), root.prefColumnsProperty()), root.vgapProperty()));
            Stream.of(scroll1, scroll2, scroll3, scroll4)
                    .map(scrollBar -> {
                        final StackPane result = new StackPane(scrollBar);
                        result.setPrefSize(Region.USE_COMPUTED_SIZE, Region.USE_COMPUTED_SIZE);
                        result.setMaxSize(Double.MAX_VALUE, Double.MAX_VALUE);
                        return result;
                    })
                    .forEach(root.getChildren()::add);
            final Scene scene = new Scene(root);
            Optional.ofNullable(getClass().getResource("test.css"))
                    .ifPresent(url -> scene.getStylesheets().add(url.toExternalForm()));
            primaryStage.setTitle("Test");
            primaryStage.setScene(scene);
            primaryStage.setWidth(800);
            primaryStage.setHeight(800);
            primaryStage.show();
        }
     
    }
    Code CSS : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    .my-scroll-bar:horizontal .decrement-button {
        -fx-pref-height:25.0px;
        -fx-pref-width:25.0px;
        -fx-background-color:blue;
        -fx-shape:"M1 0 L0 0.5 L1 1 L1 0 z";
    }
    .my-scroll-bar:horizontal .increment-button {
        -fx-pref-height:25.0px;
        -fx-pref-width:25.0px;
        -fx-background-color:red;
        -fx-shape:"M0 0 L1 0.5 L0 1 L0 0 z";
    }
    .my-scroll-bar:horizontal .track {
        -fx-background-color:linear-gradient(to right, blue,red);
    }
     
    .my-scroll-bar:vertical .decrement-button {
        -fx-pref-height:25.0px;
        -fx-pref-width:25.0px;
        -fx-background-color:blue;
        -fx-shape:"M1 0 L0 0.5 L1 1 L1 0 z";
        -fx-rotate: 90;
    }
    .my-scroll-bar:vertical .increment-button {
        -fx-pref-height:25.0px;
        -fx-pref-width:25.0px;
        -fx-background-color:red;
        -fx-shape:"M0 0 L1 0.5 L0 1 L0 0 z";
        -fx-rotate: 90;
    }
    .my-scroll-bar:vertical .track {
        -fx-background-color:linear-gradient(to bottom, blue,red);
    }

    Nom : Untitled.jpg
Affichages : 780
Taille : 28,9 Ko
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  7. #7
    Membre émérite
    Avatar de Gouyon
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    1 137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 1 137
    Billets dans le blog
    5
    Par défaut
    Je ne sais pas pourquoi je me suis pris la tête mais comme d'habitude la solution était toute bête .
    Il fallait juste que je remplace le .scroll-bar par un .my-scroll-bar et ensuite j’affectais ce sytle aux scrollbar à modifier
    Merci beaucoup

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. style pour tableau coloré ligne par ligne
    Par peppena dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 26/10/2005, 14h33
  2. [css] Même style pour 2 classes diffs ?
    Par AlphaYoDa dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 19/03/2005, 22h29
  3. style pour le bouton dans input type file
    Par manaboko dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 09/02/2005, 14h47
  4. Des styles pour le texte et les liens dans la meme div?
    Par Donkey' Shot dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 26/01/2005, 20h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo