- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 SortedList,它支持 TableView 中的数据。我想在查询数据库后按特定列对数据进行排序,但我想保留 TableView 的交互式排序功能。我的代码:
sortedData = new SortedList<>(data, new TableSort(sortIndex));
sortedData.comparatorProperty().bind(Table.comparatorProperty());
Table.setItems(sortedData);
但是,当我将 SortedList 比较器绑定(bind)到 TableView 时,原始比较器 TableSort
被忽略,并且数据显示为未排序。如果我选择不绑定(bind)比较器,我的数据会正确排序,但无法执行交互式列排序。我怎样才能在这里两全其美?感谢您的帮助。
最佳答案
因此,如果您想在将它们放入表中之前对它们进行初步排序,这非常简单。我有一个类 TestRow
,它保存表中的信息,并实现 Comparable
接口(interface):
package stackoverflow;
import javafx.beans.property.SimpleStringProperty;
public class TestRow implements Comparable<TestRow> {
private SimpleStringProperty name;
private SimpleStringProperty age;
public TestRow(String name, String age) {
this.name = new SimpleStringProperty(name);
this.age = new SimpleStringProperty(age);
}
public String getName() {
return name.get();
}
public SimpleStringProperty nameProperty() {
return name;
}
public String getAge() {
return age.get();
}
public SimpleStringProperty ageProperty() {
return age;
}
@Override
public int compareTo(TestRow that) {
return this.getName().compareTo(that.getName());
}
}
然后在我的 Controller 中我简单地添加了两行:
TestRow first = new TestRow("Steve", "20");
TestRow second = new TestRow("Mike", "22");
ObservableList<TestRow> data = FXCollections.observableArrayList(Arrays.asList(first, second));
您可以简单地调用Collections.sort(data);
,然后您就可以完成您已经拥有的其余部分。
关于java - 将 SortedList 比较器绑定(bind)到 TableView 比较器会删除排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44439911/
由于我使用的现有框架,方法调用返回一个 SortedList 对象。因为我写了这个调用的另一端,所以我知道它实际上是一个 SortedList。虽然我可以继续使用 SortedList,但使用泛型会更
我在 RecyclerView 中遇到 Android SortedList 的问题,主要是 remove 方法: public void replaceAll(List userFertList,
我想比较在 SortedList 中用作键的字节数组 public SortedList myList = new SortedList(); 问题是,我无法将条目添加到 myList 中,因为 .N
我想总结 SortedList 的某些值(时间范围从开始到结束)与林克。键包含工作日的日期,值包含给定日期可能的工作时间。我想回答的问题是,在给定的时间范围内有多少小时是可能的。 我设法计算了 key
可以SortedList取两个键并返回一个值? 我有 SortedList 类型的标准 但现在我需要传递两个键来找到值 SortedList . 这可能吗?如果没有,请告诉我其他一些解决方案,我构建了
我有降序排列的 SortedList。 public class MyComparer : IComparer { public int Compare(int x, int
我正在尝试将 SortedList 与不区分大小写的字符串比较结合使用。以下是工作: SortedList mySL = new SortedList(new CaseInsensitiveCompa
我正在开发一种算法,该算法在很大程度上依赖于某些列表中元素的顺序,但是,该列表需要允许重复和随机访问其元素(不使用迭代器)。我在java中搜索过这样的东西,但找到的选项总是缺少我提到的条件之一。 任何
其中一位使用我编写的协议(protocol)生成工具的人报告了一个我无法真正理解的错误: Failed to compare two elements in the array. 我使用 Sorted
看起来 SortedList 已被排除。您认为现有集合中最合适的是什么? (保持同样快速的访问和更改) silverlight字典可以永久排序吗? 最诚挚的问候VLK 最佳答案 我将 Wintelle
我最初有一些代码,简化后看起来像这样: var planets = new List { new Planet {Id = 1, Name = "Mercury"}, new Plan
不使用扩展方法 (LINQ)。不幸的是,我仅限于 .NET 2.0。 (是的,这很糟糕) 寻找接近 O(log(n)) 的东西。 感谢您的帮助。 最佳答案 要查找大于给定键的第一个键,您可以使用键列表
我的问题是枚举器从 SortedList 中删除项目是否安全? SortedList myDictionary; // omitted code IEnumerator enum = myDictio
我正在向排序列表中添加一些独特的法语单词,但它似乎无法区分某些单词,例如“bœuf”和 boeuf。 private static void TestSortedList() { Thread
有没有办法将 android.support.v7.util.SortedList 转换为 java.util.List? (或任何其他子类)我看到的唯一方法是遍历 SortedList 并将元素一个
我有这个对象: class Animation { //[...] private SortedList frames = new SortedList();
我在理解 RecyclerView 的 SortedList 时遇到一些问题。 假设我有一个非常简单的类,只有一个非常简单的类保存数据: public class Pojo { public
下面的代码遍历一个列表并获取值,但是我如何编写一个类似的语句来获取键和值 foreach (string value in list.Values) { Console.WriteLine(v
任何人都可以解释为什么这段代码: Dim Data As New SortedList(StringComparer.InvariantCultureIgnoreCase) Data.Add("AB"
有一个SortedList slLanguage = new SortedList(); slLanguage.Add("Bahasa","id-ID"); slLanguage.Add("Chine
我是一名优秀的程序员,十分优秀!