以Pagination的按钮隐藏为例: 首先打开FX的CSS文档,了解Pagination的结构, 找到按钮等所在的子组件,然后让子组件隐藏即可
FXCSS文档 Pagination的结构如下:
Pagination的结构
所以我们隐藏掉pagination-control这个子组件, 就可以隐藏各种按钮,和最底下的文字标签
具体的代码实现:
demo.css文件的源码:
.pagination .pagination-control{
visibility: hidden
}
java文件的源码:
import javafx.application.Application
import javafx.scene.*
import javafx.scene.control.Pagination
import javafx.scene.layout.BorderPane
import javafx.scene.text.Text
import javafx.stage.Stage
import javafx.util.Callback
public class PaginationDemo extends Application{
public static void main(String[] args) {
launch(args)
}
@Override
public void start(Stage primaryStage) throws Exception {
Pagination pageination=new Pagination(10)
//生成页面填充分页组件
pageination.setPageFactory(new Callback<Integer, Node>() {
@Override
public Node call(Integer param) {
BorderPane pane=new BorderPane()
pane.setCenter(new Text("第"+(param+1)+"页"))
pane.setPrefSize(300,300)
return pane
}
})
BorderPane root = new BorderPane()
root.setCenter(pageination)
//方法一: 用CSS的方式隐藏按钮
//优点: 可以不用管该组件目前的状态是否显示
//缺点: 需要一个CSS文件
//pageination.getStylesheets().add(getClass().getResource("demo.css").toExternalForm())
Scene scene = new Scene(root)
primaryStage.setTitle("分页组件")
primaryStage.setScene(scene)
primaryStage.show()
//方法二: 等组件显示出来后,寻找到子组件(按钮),然后设置为隐藏
//优点: 无需css文件
//缺点: 需要先显示组件,然后才能查找到子组件
pageination.lookup(".pagination-control").setVisible(false)
}
}
效果图
所以, 建议还是系统的学习下javaFX,比如fxcss (和HTML的CSS文件比较类似) 以及FXML(结构类似HTML) 稍微阅读下组件的源代码即可
用 tr:hover,不过低版本ie只支持a:hover,tr:hover不会生效,如果要兼顾低版本ie的话需要用javascript。你这个效果只是个小视觉辅助,低版本ie完全可以不管。<style>
table{background: #666}
tr:hover{background: #ccc}
</style>
<table width="500">
<tr>
<td>1</td>
<td>2</td>
</tr>
<tr>
<td>3</td>
<td>4</td>
</tr>
</table>