2017-08-30 97 views
0

如何更改javaFX中颜色选择器的图标大小。我遇到问题了,我无法增加JavaFX中颜色选择器的图标大小,有谁知道如何更改按钮图标的大小?如何更改JavaFX中颜色选择器的图标大小?

图标的小:(

icon its small :(

+1

你是如何生成该图像的,你能为此提供[mcve]吗?它看起来像是来自SceneBuilder的镜头,如果是这样的话,可能会在您的问题中包含生成的FXML。 – jewelsea

+0

阅读有关http://docs.oracle.com/javase/8/javafx/api/javafx/scene/doc-files/cssref.html#colorpicker –

+0

如何更改默认图标?我需要更改默认图标,他的大小 –

回答

0

您可以访问和使用CSS定义的颜色选择器:

颜色拾取

Style类:颜色选择器

子结构

  • 彩色显示节点 - 标签

  • 箭头按钮 - StackPane

  • 箭头 - StackPane

ColorPicker控件具有的所有属性和伪ComboBase

.color-picker .label { 
    -fx-background-color: red; 
    -fx-text-fill: null; 
    -fx-graphic: url("1487868456_Other_Antivirus_Software.png");//This is icon of Color picker label 


} 

结果: Customise color picker

据我所知,你不能在所有使用-fx宽/ -fx高,你不能使用百分比值,它。元素的宽度和高度是只读的。您可以设置-fx-pref-width,-fx-pref-height,-fx-max-width,-fx-min-width,-fx-max-height,-fx-min-height,-fx-border- width和-fx-border-height来调整Java FX元素的大小。

.picker-color { 
    -fx-border-color:white ; 
    -fx-border-width:40; 


} 

PickerColor

+0

如何更改默认图标?我需要更改默认图标,他的大小。 –

+0

我知道的是ColorPicker控件拥有ComboBoxBase.Read的所有属性和伪类https://docs.oracle.com/javafx/2/api/javafx/scene/doc-files/cssref.html#colorpicker。这是我对颜色选择器的限制。 –

2

设置CSS属性-fx-color-rect-width-fx-color-rect-width会改变显示在矩形的大小。设置fx-font-size将改变箭头的大小。

pickme

注意,一些属性没有在official JavaFX CSS reference记录,所以我想未来的JavaFX迭代可以改变他们,恕不另行通知。不过,在这个阶段,我认为这可能不太可能,并且这些属性使用起来相当安全。为了确定未记录的CSS属性,我查看了ColorPickerSkin的源代码。

pickme.css

.large-rect-picker { 
    -fx-color-rect-width: 60px; 
    -fx-color-rect-height: 60px; 
    -fx-color-label-visible: false; 
    -fx-min-width: 150px; 
    -fx-min-height: 100px; 
    -fx-pref-width: 150px; 
    -fx-pref-height: 100px; 
} 

.large-rect-picker > .arrow-button { 
    -fx-font-size: 30px; 
} 

PickMe。java的

import javafx.application.Application; 
import javafx.scene.Group; 
import javafx.scene.Scene; 
import javafx.scene.control.ColorPicker; 
import javafx.stage.Stage; 

public class PickMe extends Application { 

    @Override 
    public void start(Stage stage) { 
     ColorPicker colorPicker = new ColorPicker(); 
     colorPicker.getStyleClass().add("large-rect-picker"); 

     stage.setScene(new Scene(new Group(colorPicker))); 
     stage.getScene().getStylesheets().add(
       PickMe.class.getResource(
         "pickme.css" 
       ).toExternalForm() 
     ); 
     stage.show(); 
    } 

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

除了信息提出问题

这是很难知道你想要什么,你是不是真正的问题明确。比如你的图标是什么意思?矩形或向下箭头或两者?当你点击那个箭头时弹出的显示是什么,应该改变还是保持不变?对于将来的问题,我建议你更具体地说明你想要达到的目标,以及它与你所拥有的不同之处。显示生成你所拥有的代码也可能帮助其他人解决你的问题。希望上面的信息足以让你修改它来完成你的愿望。

相关问题