写编辑器遇到的一些问题

q1531 2008-10-18 05:07:24
我在写一个编辑器,现在遇到一些问题。
1.我在eclipse里运行程序时工具栏JToolBar一部分的一部分截图,
。第一个图标那里点击后不会出现虚线。

我导出做成JAR后,运行截图如下。在点击图标后周围会出现虚线。


怎么去掉这个虚线?都是用的JDK1.5,在eclipse中,和做成jar后的效果不一样,为什么?

2.当JTree,setRootVisible(false)后,原本的第一级子节点之间的虚线没有了。



怎样在setRootVisible(false)后使节点之间的虚线乃存在?

3.eclipse 那样的编辑窗口怎么实现?


4.如何让JDialog打开后主窗体不能被操作?就如eclipse新建文件的对话框那样,在打开这个对话框时不能操作主窗体。

这些都是我目前遇到的问题,找了相关的资料都找不到解决方法。

希望各位大虾,指点一二。最后能发完整的DEMO出来。谢谢!
...全文
130 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
q1531 2008-10-19
  • 打赏
  • 举报
回复
非常感谢大家!
第一个问题是由于JAVA版本的原因造成的。
其他问题都已经解决了.
以梦为马 2008-10-18
  • 打赏
  • 举报
回复
C/S 的不懂
sunyujia 2008-10-18
  • 打赏
  • 举报
回复
请注意楼主问的不是SWT,而是Swing

不好意思,真寒。。。
accp206 2008-10-18
  • 打赏
  • 举报
回复
第6、7、8楼,请注意楼主问的不是SWT,而是Swing

本人对Swing相当自信。正解在此:

第一个问题:
楼主说的那个虚线叫“焦点状态”,可以通过以下这个方法去掉:
btnXxx.setFocusPainted(false);

第二个问题:
假设你的JTree对象名为trvXxx
trvXxx.setShowsRootHandles(true);

第三个问题:
使用java.swing.JTabbedPane(这个组件通常叫“选项卡”)

第四个问题:
这个效果在Java中叫模式对话框,实现方法:
dlgXxx.setModal(true);
等效于:
dlgXxx.setModalityType(Dialog.DEFAULT_MODALITY_TYPE);

推荐使用setModalityType()
因为setModal()已过时,“保留它只是为了后向兼容。可以使用 setModalityType() 代替。”(API文档中的原话)
sunyujia 2008-10-18
  • 打赏
  • 举报
回复
2个问题
setRootVisible后在focus()一下。这是GUI开发常见问题。

1个问题,很有可能是eclipse 的swt版本和你打出jar后用的swt版本不一样导致的,开发的时候引用你将来jar文件引用的swt,jar建议使用最新版本的,因为不用自己指定dll了,地址
http://download.eclipse.org/eclipse/downloads/drops/R-3.4-200806172000/download.php?dropFile=swt-3.4-win32-win32-x86.zip

完整的例子,见我6楼的小东西和swt官方demo
sunyujia 2008-10-18
  • 打赏
  • 举报
回复
sunyujia 2008-10-18
  • 打赏
  • 举报
回复
100分问这么多
先回答简单确定的
3.
http://www.eclipse.org/swt/examples.php
http://www.eclipse.org/swt/
学swt一定要看官方的例子,一定啊,上面是地址,你说的哪个东西学名叫选项卡
我以前写的一个小东西
http://topic.csdn.net/u/20071213/22/f8720e2c-5e68-4855-a26c-443cacff46b6.html
gejixin 2008-10-18
  • 打赏
  • 举报
回复
我来回答,第四个问题,应为我刚刚作过的,在JDialog的构造函数里,如new JDialog(JFrame,boolean model);
把父窗口传进去,model设置成true就可以了,如果你的类是继承自jdialog的,
只要super(jframe,boolean model);就可以了
gejixin 2008-10-18
  • 打赏
  • 举报
回复
这个问题你就不用管了,我的Vista就是这样,在选中的时候一会有虚线,一会虚线又没了,应该和操作系统有关系
q1531 2008-10-18
  • 打赏
  • 举报
回复
第一个问题,没找到相关的方法。
我现在的疑问是,为什么我在eclipse里测试运行时,就没有那个虚线。
做成jar后。这个虚线就出来了。
zhj92lxs 2008-10-18
  • 打赏
  • 举报
回复
不了解
老紫竹 2008-10-18
  • 打赏
  • 举报
回复
可惜GUI不懂,是否有个方法,移除那个选中的焦点呢?比如blur();

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧