第20章 扩展GUI 875
20.1 创建状态栏 875
20.1.1 用于Sketcher的状态栏类 876
20.1.2 更新面板 878
20.2 使用对话框 880
20.2.1 模态对话框和非模态对话框 881
20.2.2 一个简单的模态对话框 882
20.2.3 即时消息对话框 885
20.2.4 即时输入对话框 887
20.3 使用对话框创建文本元素 889
20.3.1 为文本定义菜单项和工具栏按钮 889
20.3.2 定义文本类 891
20.3.3 创建文本元素 892
20.4 字体选择对话框 895
20.4.1 FontDialog类 896
20.4.2 创建字体对话框按钮 896
20.4.3 添加数据面板 898
20.4.4 实现字体列表 899
20.4.5 显示所选的字体 901
20.4.6 使用分隔面板 902
20.4.7 使用微调按钮 903
20.4.8 使用单选按钮来选择字体样式 905
20.4.9 监听单选按钮 906
20.5 弹出式菜单 908
20.5.1 显示弹出式菜单 910
20.5.2 实现上下文菜单 913
20.7 变换用户坐标系统 921
20.8 选择自定义颜色 937
20.8.1 使用缓存的图像 938
20.8.2 使用JColorChooser对话框 938
20.8.3 添加自定义颜色GUI 939
20.8.4 显示颜色选择对话框 941
20.9 小结 942
20.10 练习 943
第21章 填充和打印文档 945
21.1 串行化草图 945
21.1.1 实现串行化 946
21.1.2 串行化元素列表 946
21.2 用来保存草图的基本架构 946
21.2.1 指定文件名 946
21.2.1 验证草图的目录 947
21.2.3 记录草图是否修改 948
21.2.4 处理File菜单事件 949
21.3 使用文件选择器 950
21.3.1 显示文件保存对话框 950
21.3.2 显示文件打开对话框 951
21.3.3 定制文件选择对话框 951
21.4 实现文件操作 953
21.4.1 创建定制的文件对话框 954
21.4.2 实现保存操作 955
21.4.3 实现Save As操作 959
21.4.4 实现文件打开操作 961
21.4.5 启动新草图 963
21.4.6 禁止在关闭时丢失数据 964
21. 5 在Java中打印 966
21.5.1 创建和使用PrinterJob对象 967
21.5.2 打印页面 970
21.5.3 打印整个草图 974
21.5.4 横向打印 978
21.5.5 提高打印性能 980
21.2.6 实现页面设置 981
21.5.7 使用Java打印对话框 984
21.5.8 多页面文档的打印 987
21.5.9 使用Book对象进行打印 995
21.5.10 打印Swing组件 997
21.6 小结 999
21.7 练习 1000