/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package controls;
import java.net.URL;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.ResourceBundle;
import javafx.beans.property.SimpleIntegerProperty;
import javafx.beans.property.SimpleStringProperty;
import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.control.ListCell;
import javafx.scene.control.ListView;
import javafx.scene.control.SelectionMode;
import javafx.scene.control.TableColumn;
import javafx.scene.control.TableView;
import javafx.scene.control.TreeItem;
import javafx.scene.control.TreeTableColumn;
import javafx.scene.control.TreeTableView;
import javafx.scene.control.TreeView;
import javafx.scene.control.cell.PropertyValueFactory;
import javafx.scene.control.cell.TreeItemPropertyValueFactory;
import javafx.scene.input.MouseEvent;
import javafx.scene.web.WebView;
import javafx.util.Callback;
import javax.swing.JOptionPane;
/**
*
* @author Administrator
*/
public class MainController implements Initializable {
@FXML
private TableView tableView;
@FXML
private TreeView treeView;
@FXML
private ListView listView;
@FXML
private TreeTableView treeTableView;
@FXML
private WebView webView;
private List<Email> emails;
@FXML
private void handleButtonAction(ActionEvent event) {
System.out.println("You clicked me!");
}
@FXML
public void handleMouseAction(MouseEvent event) {
System.out.println("mouse click:" + event);
int index = tableView.getSelectionModel().getSelectedIndex();
System.out.println("mouse click " + index);
JOptionPane.showMessageDialog(null, index + "");
}
@Override
public void initialize(URL url, ResourceBundle rb) {
emails = new ArrayList<Email>();
for (int i = 0; i < 100; i++) {
Email email = new Email(new SimpleStringProperty("发件人" + i), new SimpleStringProperty("邮件内容"), new SimpleStringProperty("2014-10-29 09:52:57"), new SimpleIntegerProperty(i));
emails.add(email);
}
//tableView设置
final ObservableList<Email> data = FXCollections.observableArrayList();
data.setAll(emails);
ObservableList<TableColumn> observableList = tableView.getColumns();
observableList.get(0).setCellValueFactory(new PropertyValueFactory("send"));
observableList.get(1).setCellValueFactory(new PropertyValueFactory("content"));
observableList.get(2).setCellValueFactory(new PropertyValueFactory("date"));
observableList.get(3).setCellValueFactory(new PropertyValueFactory("number"));
//observableList.get(4).setCellFactory(ProgressBarTableCell.forTableColumn());指定视图类型
tableView.setItems(data);
//tableView.getSelectionModel().selectionModeProperty();
/**
* tableView.setOnMouseClicked(new EventHandler<MouseEvent>(){
*
* @Override public void handle(MouseEvent event) {
*
* int index = tableView.getSelectionModel().getSelectedIndex();
* System.out.println("mouse click "+index);
* JOptionPane.showMessageDialog(null, index + ""); }
});
*/
tableView.selectionModelProperty().addListener(new ChangeListener() {
@Override
public void changed(ObservableValue observable, Object oldValue, Object newValue) {
int index = tableView.getSelectionModel().getSelectedIndex();
JOptionPane.showMessageDialog(null, index + "");
switch (index) {
case 1:
System.out.println("index=" + 1);
break;
default:
break;
}
}
});
//treeView设置
final TreeItem<String> treeRoot = new TreeItem<String>("Root node");
treeRoot.getChildren().addAll(Arrays.asList(
new TreeItem<String>("Child Node 1"),
new TreeItem<String>("Child Node 2"),
new TreeItem<String>("Child Node 3")));
treeRoot.getChildren().get(2).getChildren().addAll(Arrays.asList(
new TreeItem<String>("Child Node 4"),
new TreeItem<String>("Child Node 5"),
new TreeItem<String>("Child Node 6"),
new TreeItem<String>("Child Node 7"),
new TreeItem<String>("Child Node 8")));
treeRoot.setExpanded(true);
treeRoot.getChildren().get(2).setExpanded(true);
treeView.setShowRoot(true);
treeView.setRoot(treeRoot);
//listView设置
listView.setItems(FXCollections.<Number>observableArrayList(
100.00, -12.34, 33.01, 71.00, 23000.00, -6.00, 0, 42223.00, -12.05, 500.00,
430000.00, 1.00, -4.00, 1922.01, -90.00, 11111.00, 3901349.00, 12.00, -1.00, -2.00,
15.00, 47.50, 12.11
));
//多选
listView.getSelectionModel().setSelectionMode(SelectionMode.MULTIPLE);
//treeTableView设置
int i = 0;
Email email = new Email(new SimpleStringProperty("发件人" + i), new SimpleStringProperty("邮件内容"), new SimpleStringProperty("2014-10-29 09:52:57"), new SimpleIntegerProperty(i));
final TreeItem<Email> rootItem = new TreeItem<>(email);
i = 1;
email = new Email(new SimpleStringProperty("发件人" + i), new SimpleStringProperty("邮件内容"), new SimpleStringProperty("2014-10-29 09:52:57"), new SimpleIntegerProperty(i));
final TreeItem<Email> child1Item = new TreeItem<>(
email);
i = 2;
email = new Email(new SimpleStringProperty("发件人" + i), new SimpleStringProperty("邮件内容"), new SimpleStringProperty("2014-10-29 09:52:57"), new SimpleIntegerProperty(i));
final TreeItem<Email> child2Item = new TreeItem<>(
email);
i = 3;
email = new Email(new SimpleStringProperty("发件人" + i), new SimpleStringProperty("邮件内容"), new SimpleStringProperty("2014-10-29 09:52:57"), new SimpleIntegerProperty(i));
TreeItem<Email> child3Item = new TreeItem<>(email);
i = 4;
email = new Email(new SimpleStringProperty("发件人" + i), new SimpleStringProperty("邮件内容"), new SimpleStringProperty("2014-10-29 09:52:57"), new SimpleIntegerProperty(i));
TreeItem<Email> child4Item = new TreeItem<>(email);
rootItem.setExpanded(true);
rootItem.getChildren().addAll(child1Item, child2Item);
child1Item.getChildren().add(child3Item);
child1Item.getChildren().add(child4Item);
ObservableList<TreeTableColumn> observableList2 = treeTableView.getColumns();
observableList2.get(0).setCellValueFactory(new TreeItemPropertyValueFactory("send"));
observableList2.get(1).setCellValueFactory(new TreeItemPropertyValueFactory("content"));
observableList2.get(2).setCellValueFactory(new TreeItemPropertyValueFactory("date"));
observableList2.get(3).setCellValueFactory(new TreeItemPropertyValueFactory("number"));
treeTableView.setRoot(rootItem);
treeTableView.setEditable(true);
webView.getEngine().load("http://www.baidu.com/");
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
netbeans+javafx+fxml的基本控件的使用.rar (35个子文件)
Controls
build.xml 3KB
dist
Controls.jar 9KB
Controls.html 4KB
Controls.jnlp 965B
web-files
javafx-loading-100x100.gif 17KB
dtjava.js 132KB
upgrade_java.png 11KB
get_java.png 10KB
upgrade_javafx.png 13KB
get_javafx.png 11KB
javafx-chrome.png 11KB
error.png 725B
javafx-loading-25x25.gif 2KB
manifest.mf 85B
src
controls
Email.java 2KB
MainController.java 8KB
Controls.java 1013B
Main.fxml 2KB
nbproject
build-impl.xml 78KB
private
configs
_______.properties 102B
__WebStart_____.properties 102B
private.properties 352B
configs
_______.properties 129B
__WebStart_____.properties 127B
project.xml 1KB
genfiles.properties 475B
project.properties 4KB
jfx-impl.xml 215KB
build
classes
controls
Controls.class 1KB
MainController.class 7KB
Email.class 2KB
MainController$1.class 2KB
Main.fxml 2KB
empty
built-jar.properties 105B
generated-sources
ap-source-output
nb-jfx.jks 1KB
共 35 条
- 1
资源评论
- wslianbo2015-09-24不错,解决了我遇到的问题,谢谢
- winney1172016-01-29还没用,感谢!
- lustar_20082019-03-15可以用,不过现在用的少了
- Home_Code2016-06-23一般,代码不够详述,不能解决问题。
- icefoxy2017-02-05东西可以下载,但是没有TreeTableView的内容!!!
yunshouhu
- 粉丝: 1050
- 资源: 115
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 课程设计-基于SpringBoot + Mybatis+python爬虫NBA球员数据爬取可视化+源代码+文档+sql+效果图
- 软件品质管理系列二项目策划规范.doc
- 基于TensorFlow+PyQt+GUI的酒店评论情感分析,支持分析本地数据文件和网络爬取数据分析+源代码+文档说明+安装教程
- 软件定义无线电中的模拟电路测试技术.pptx
- 软件开发协议(作为技术开发合同附件).doc
- 软件开发和咨询行业技术趋势分析.pptx
- 软件测试题详解及答案.doc
- 软件漏洞生命周期管理策略.pptx
- 毕业设计-基于Python实现的的简易气温爬虫,可以爬取全国各市的近7日气温数据
- 软件系统测试报告(实用版).doc
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功