JAVA :Jpanel 控件 无法显示问题

http://blog.csdn.net/gcangle/article/details/8222005

————————————————————————————————————————————————————————

在做一个嵌入式摄像头项目中,遇到了这样一个郁闷的问题。

新建了一个类继承Jpanel,向其中添加了一些控件后,加入到原来的JFrame中,然后Jpanel中控件,无论如何都显示不了了。

(为了方便控制 ContentPane布局为“borderlayout”,而JPanel布局为“absolute”,Jpanel放在contenpane的NORTH位置)

而后上网查了不少资料,但是仍然无法解决。只能自己探究。

经过一天的尝试,发现了一个奇怪的现象。

当将继承类的布局

getContentPane().add(comp, BorderLayout.CENTER);

的时候。这个类的控件居然就能够正常显示了。而其他的例如getContentPane().add(comp, BorderLayout.NORTH);控件就无法显示。

真是神奇的存在!

于是进一步探究 终于发现了问题的核心!总结起来就一句话

当自己写的JPanel布局为Null时,只能放在CENTER的位置,否则将无法显示!

或者说只要将布局改为非Null,一切都正常了。

——————————————————————————————————————————————————————————————

在TopComponent中也要注意这种情况。。。

时间: 2024-12-23 17:18:31

JAVA :Jpanel 控件 无法显示问题的相关文章

js 日期控件 可以显示为和历

日期控件的js 1 <!-- 2 /** 3 * Calendar 4 * @param beginYear 1990 5 * @param endYear 2010 6 * @param language 0(zh_cn)|1(en_us)|2(en_en)|3(zh_tw)|4(jp) 7 * @param patternDelimiter "-" 8 * @param date2StringPattern "yyyy-MM-dd" 9 * @param

终于懂了:FWinControls子控件的显示是由Windows来管理,而不是由Delphi来管理

在研究TCustomControl的显示过程中,怎么样都找不到刷新FWinControls并重新显示的代码: procedure TWinControl.PaintHandler(var Message: TWMPaint); var I, Clip, SaveIndex: Integer; DC: HDC; PS: TPaintStruct; begin DC := Message.DC; if DC = 0 then DC := BeginPaint(Handle, PS); try if

解决TalbleView头部或底部子控件不显示问题

在自定义cell头部控件UITableViewHeaderFooterView(和自定义cell的方法几乎一样)时,出现了头部控件子控件不显示的问题. 注意和自定义cell的区别. .h文件 1 #import <UIKit/UIKit.h> 2 #import "CHModleGroup.h" 3 @interface HeaderView : UITableViewHeaderFooterView 4 @property (nonatomic, weak) UILabe

iOS UI控件没有显示时的调试技巧

1.遇到UI控件没有显示的问题,可以给这个控件设置背景色 假设这个控件是UIBUtton 如果背景色能显示,那问题就出在image和title值为空 如果背景色不能显示,重写控件的description方法,把控件的frame打印出来分析 2.以下是打印UIView的frame的分类 #import <UIKit/UIKit.h> @interface UIView (Log) @end 1 #import "UIView+Log.h" 2 3 @implementatio

OpenCV获取摄像头视频并在MFC的Picture控件上显示

分为两步:OpenCV获取摄像头数据+图像在Picture上显示 第一步:OpenCV获取摄像头数据 参考:http://www.cnblogs.com/epirus/archive/2012/06/04/2535190.html http://blog.sina.com.cn/s/blog_6dbe9bdb0100nii7.html http://blog.csdn.net/augusdi/article/details/8762961 #include "stdafx.h" #in

JxBrowser Java浏览器控件详细介绍

JxBrowser能在Windows.Linux.Mac OS X (Intel and PPC-based)平台上将Mozilla Firefox浏览器完美地整合到Java AWT/Swing应用程序里.该库程序使用Gecko设计引擎来转换HTML文档.因而保证了它能与许多Internet标准(如HTML 4.CSS.XML.JavaScript以及其它)兼容. 主要功能 用来将HTML浏览程序内置到AWT/Swing用户界面上的可视浏览器控件 使用Gecko 1.9/Firefox 3代码库

透明窗体透明窗体 控件正常显示

//TransparentFrm透明窗体透明窗体 控件正常显示 {以图片的形状作为窗体形态}{使窗体透明 透明的只剩下个控件} // 调用 setFormTransParent(Form1); procedure setFormTransParent(Form:TForm); begin Form.BorderStyle:=bsNone; Form.TransparentColor:=True; Form.TransparentColorValue:=20; Form.Color:=Form.T

JxBrowser Java浏览器控件详细介绍及下载

JxBrowser能在Windows.Linux.Mac OS X (Intel and PPC-based)平台上将Mozilla Firefox浏览器完美地整合到Java AWT/Swing应用程序里.该库程序使用Gecko设计引擎来转换HTML文档.因而保证了它能与许多Internet标准(如HTML 4.CSS.XML.JavaScript以及其它)兼容. 主要功能 用来将HTML浏览程序内置到AWT/Swing用户界面上的可视浏览器控件 使用Gecko 1.9/Firefox 3代码库

kettle系列-[KettleUtil]kettle插件,类似kettle的自定义java类控件

该kettle插件功能类似kettle现有的定义java类插件,自定java类插件主要是支持在kettle中直接编写java代码实现自定特殊功能,而本控件主要是将自定义代码转移到jar包,就是说自定义功能的实现改为在eclipse等ide中开发. 设计本插件的原因是直接在kettle中写java代码是很不容易的事,开发体验与eclipse差得远,java语法还要受到限制,调试麻烦.实现点简单的逻辑还行,稍微复杂一点就比较麻烦,需要对java和kettle相关接口很熟悉.而简单的功能可以采用jav