我想创建一个显示为组合框的组列表:
import java.util.List;
import javafx.application.Application;
import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
import javafx.scene.Scene;
import javafx.scene.control.ComboBox;
import javafx.scene.control.ListCell;
import javafx.scene.control.ListView;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
import javafx.util.Callback;
public class Listobject extends Application
{
public static void main(String[] args)
{
launch(args);
}
@Override
public void start(Stage stage)
{
// Insert Some data
ListGroupsObj ob = ListGroupsObj.newInstance().groupId(12).groupName("Test");
ListGroupsObj osb = ListGroupsObj.newInstance().groupId(13).groupName("Test2");
final ComboBox<ListGroupsObj> listGroups = new ComboBox();
listGroups.setButtonCell(new GroupListCell());
listGroups.setCellFactory(new Callback<ListView<ListGroupsObj>, ListCell<ListGroupsObj>>()
{
@Override
public ListCell<ListGroupsObj> call(ListView<ListGroupsObj> p)
{
return new GroupListCell();
}
});
listGroups.setEditable(true);
listGroups.getItems().addAll(ob, osb);
listGroups.setValue(ob);
// Display the selected Group
listGroups.getSelectionModel().selectedItemProperty().addListener(new ChangeListener<ListGroupsObj>()
{
@Override
public void changed(ObservableValue<? extends ListGroupsObj> arg0, ListGroupsObj arg1, ListGroupsObj arg2)
{
if (arg2 != null)
{
System.out.println("Selected Group: " + arg1.getGroupId() + " - " + arg2.getGroupName());
}
}
});
final StackPane layout = new StackPane();
layout.getChildren().add(listGroups);
layout.setStyle("-fx-background-color: cornsilk; -fx-padding: 15;");
stage.setScene(new Scene(layout));
stage.show();
}
class GroupListCell extends ListCell<ListGroupsObj>
{
@Override
protected void updateItem(ListGroupsObj item, boolean empty)
{
super.updateItem(item, empty);
if (item != null)
{
setText(item.getGroupId() + " - " + item.getGroupName());
}
}
}
private List<ListGroupsObj> listGroups;
public static class ListGroupsObj
{
private int groupId;
private String groupName;
public static ListGroupsObj newInstance()
{
return new ListGroupsObj();
}
public ListGroupsObj()
{
}
public ListGroupsObj groupId(int groupId)
{
this.groupId = groupId;
return this;
}
public ListGroupsObj groupName(String groupName)
{
this.groupName = groupName;
return this;
}
public int getGroupId()
{
return groupId;
}
public String getGroupName()
{
return groupName;
}
// @Override
// public String toString()
// {
// return serverName;
// }
}
}
当我添加list groups . set editable(true);默认选定组的标签不可读。你能帮我解决这个问题吗?另外,你能告诉我如何优化这个代码,使之易于使用吗?
为组合框提供转换器,以便从字符串转换为列表组Obj类型并返回。
问题内容: 我遇到了轴刻度标签的格式问题。我禁用了y_axis的偏移量: 并尝试将其设置为科学格式,但我得到的是: 但我期望这样的事情: 或类似。 我真正想要的是这样的: 我可以尝试将标签设置为静态,但是最后我将拥有数十或数百个具有不同值的图,因此需要动态设置。 一种替代方法是将y_axis偏移量放置为标签,但是我也不知道如何执行此操作。 问题答案: 有很多方法可以做到这一点 您可以调整功率限制(
在设计较为复杂的对话框时,常常会遇到这种情况:对某一事物的设置或选项需要用到大量的控件,以至于一个对话框放不下,而这些控件描述的是类似的属性,不能分开。用普通的对话框技术,这一问题很难解决。 MFC提供了对标签式对话框的支持,可以很好的解决上述问题。标签式对话框实际上是一个包含了多个子对话框的对话框,这些子对话框通常被称为页(Page)。每次只有一个页是可见的,在对话框的顶端有一行标签,用户通过单
我有一个关于HTML中锚tel:标记的小问题。 这是有效的,还是有关于如何正确书写的标准? 空格和前缀的问题困扰了我,允许吗?
我试图创建一个复选框标签,其中复选框本身是隐藏的,但标签没有因此点击标签,选中复选框,即使没有显示。 我想做的是,当它被选中时,标签保持红色,为此我为复选框活动指定了一个类,但它不起作用。它可以在悬停状态下正常工作,但不能在活动状态下正常工作。当我单击它时,复选框会选中,但标签不会读取活动类。 有什么想法吗? 我使用以下html: 还有下面的css
我想用haar cascade数数汽车。 我将图像正确地转换为灰度,并成功地在框架上画了一条线。问题是我得到了这个错误 错误:OpenCV(3.4.2)C:\build\3\u 4\u winpack-bindings-win32-vc14-static\OpenCV\modules\imgproc\src\contours。cpp:199:错误:(-210:不支持的格式或格式组合)[Start]
我有这个代码是用来显示文本到组合框。 在我的情况下,我无法将VBox插入到组合框中。任何想法,我该如何解决这个问题?