JComboBox的下拉菜单为何有时不显示
在applet中放JComboBox组件,用appletviewer运行没什么问题,
可在ie中运行,一改变窗口大小,JComboBox的下拉菜单有时就不显示;如果在JComboBox下方放一组件TextArea,JComboBox的下拉菜单似乎被这个组件挡住了,同样不显示。
这是怎么回事?请指教!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(7)
ie的JRE只支持到JDK1.1,而JComboBox是Swing组件,至少需要JDK1.2的支持,所以看不见拉。
只要像如下修改html,即可:
<object classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"
codeBase="http://java.sun.com/products/plugin/1.3/jinstall-13-win32.cab#Version=1,3,0,0"
width=300
height=320
align=center>
<param name="code" value="*****.class">
</OBJECT>
谢谢!
我用的是这样的:
<OBJECT classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"
width=500 height=480 codebase="http://java.sun.com/products/plugin/1.3/jinstall-13-win32.cab#Version=1,3,0,0">
<PARAM NAME = CODE VALUE = testApplet >
<PARAM NAME="type" VALUE="application/x-java-applet;version=1.3">
<PARAM NAME="scriptable" VALUE="false">
<param name=userID value="mrwhao">
<COMMENT>
<EMBED type="application/x-java-applet;version=1.3" CODE =wbclient width=500 height=480 scriptable=false pluginspage="http://java.sun.com/products/plugin/1.3/plugin-install.html">
<NOEMBED>
</COMMENT>
Don't support JDK1.3
</NOEMBED>
</EMBED>
</OBJECT>
还是时有时无。是不是swing的一个bug?
Swing组件大部分是轻量组件,也就是说这些组件并不是真正的系统子窗口,而awt组件属于重量组件,他们是用本地窗口同位体实现的。当轻、重量组件重叠时,重量组件总是显示在轻量组件之上,而且轻量组件载显示时范围不能超出它的重量容器之外。所以你用的轻量的JComboBox会被重量的TextArea遮住,并且JComboBox的下拉列表不能显示到Applet外面。所以轻量和重量组件最好不要混用。
同意楼上的。Swing组件和awt组件不要混用。
有道理。
但是我真的都用的是swing控件(JComboBox下放的是含JTextArea的JScrollPane控件),浏览时,不全屏就能显示下拉菜单,改变窗口大小就会出不来,很奇怪。
没错,不过你可以换成Netscape 6.0,它支持Swing