java AIX中将文件夹内的所有文件授权txt文件的内容(有很多行)全部显示在textArea的Gui界面中,我现在写的代码

java GUI TextArea中汉字字体显示不完全 有什么解决办法? - 知乎有问题,上知乎。知乎作为中文互联网最大的知识分享平台,以「知识连接一切」为愿景,致力于构建一个人人都可以便捷接入的知识分享网络,让人们便捷地与世界分享知识、经验和见解,发现更大的世界。2被浏览590分享邀请回答暂时还没有回答,开始写第一个回答天道酬勤 知易行难
Unity中的GUI编程
在这篇文章中我将给读者介绍Unity中的图形用户界面(GUI)编程.Unity有一个非常强大的GUI脚本API.它允许你使用脚本快速创建简单的菜单和GUI.
Unity提供了使用脚本创建GUI界面的能力.在写这篇文章的时候,Unity还没有提供一套原生的可视化GUI开发工具,尽管你可能会在Unity Asset商店找到一些使用某种形式的图形化脚本编程编写GUI的工具.也提供了一个可以单独购买并整合进Unity的插件但这超出了这篇文章的范围.如果你对Scaleform插件的unity版本感兴趣,我推荐你看看.
Unity提供了两个主要的类来创建GUI.类用于创建手动放置的GUI控件.类用于创建自动放置的GUI控件.这两个类之间的区别将在文章后面搞清楚.
Unity也提供了资源(asset翻译成套件?).它可以被应用于给你的GUI控件提供一种通用的的"外观和感觉".一个GUISkin只是GUIStyle对象的集合.每个GUIStyle对象定义了单个GUI控件的样式,比如按钮,标签或者文本域.
GUiText组件可被用于渲染单个的文本元素,GUITexture组件可以被用于渲染2D材质到屏幕.GUIText和GUITexture都适用于为你的游戏绘制GUI元素(就像HUD),但这些组件不适用于在游戏中绘制菜单.对于游戏中的菜单(像等级选择和选项设置页面)你应该使用GUI和GUILayout类.
这些不同的类,资源(Asset)和组件每一个本文中都会阐述
首先我讲述一下如何在使用GUI和GUILayout在Unity中创建菜单.我也会向你展示如何使用GUISkin和GUIStyle来自定义GUI控件的外观
OnGUI回调函数
GUI的渲染是通过创建脚本并定义OnGUI函数来执行的.所有的GUI渲染都应该在该函数中执行或者在一个被OnGUI调用的函数中执行
ButtonDemo.js
function OnGUI()
var buttonWidth = 100;
var buttonHeight = 50;
var buttonX = (Screen.width - buttonWidth) / 2.0f;
var buttonY = (Screen.height - buttonHeight) / 2.0f;
//在屏幕中间绘制一个button组件
if(GUI.Button(Rect(buttonX,buttonY,buttonWidth,buttonHeight),"Press Me!"))
//在调试控制台打印一些文字
Debug.Log("Thanks!");
}脚本ButtonDemo.js将会在屏幕中间绘制一个按钮,松开按钮文字"Thanks!"就会被打印到调试控制台.
GUIContent
大多数通用控件比如按钮和标签允许你指定控件上该呈现在控件上的的文本或者材质.如果你想在一个控件上指定文本与材质,那必须使用结构.
CUIContent结构有几个构造函数允许你创建一个带有文本,材质和tooltip的CUIContent对象.
下面的例子扩展了之前的例子,但在这个例子中按钮的内容由GUIContent结构指定.
ButtonDemo.js
#pragma strict
var texture:T
var text:String = "hello text";
var toolTip:String = "hello toolTip";
function OnGUI()
var buttonWidth = 100;
var buttonHeight = 50;
var buttonX = (Screen.width - buttonWidth) / 2.0f;
var buttonY = (Screen.height - buttonHeight) / 2.0f;
//在屏幕中心绘制一个带有文本和图像的按钮
if(GUI.Button(Rect(buttonX,buttonY,buttonWidth,buttonHeight),GUIContent(text,texture,toolTip)))
//在调试控制台打印一些文字
Debug.Log("Thanks!");
}改进后的ButtonDemo.js脚本将会在屏幕上显示一个文本与材质.材质,文本和tooltip参数可以在检视器(inspector)中指定.
ButtonDemo.js脚本会产生如下结果.
使用GUI类你必须手动的摆放屏幕上的控件.控件使用GUI静态函数的position参数来摆放.为了在屏幕上摆放控件,必须将一个Rect结构作为第一个参数传递给GUI控件函数.Rect结构的为控件定义了X,Y,Width,Height属性.X,Y,Width和Height单位都是像素.
Screen.width和Screen.height属性可以被用于检视当前屏幕的范围.
脚本ScreenDimension.js可以被用于渲染上面的截图.
ScreenDimensions.js
function OnGUI()
var width = Screen.
var height = Screen.
GUI.Label(Rect(0,0,100,20),"Top Left");
GUI.Label(Rect(width - 100,0,100,20),"Top Right");
GUI.Label(Rect(0,height - 20,100,20),"Bottom Left");
GUI.Label(Rect(width - 100,height - 20,100,20),"Bottom Right");
}ScreenDimension.js脚本将绘制4个标签.每个标签都使用Screen.width和Screen.height属性来决定其屏幕位置并对齐到屏幕角落里(测量单位为像素)
GUI类是Unity用于将控件渲染到屏幕上的主要类.GUI类使用手动摆放来决定屏幕上控件的位置.这意味着在渲染控件时你必须显式的指定控件在屏幕上的位置.使用这种方法手动摆放控件需要多做些工作但他可以让你精确地控制屏幕上的控件位置.如果你不想手动的指定GUI控件的位置,那你应该使用GUILayout类.我们后面再详细阐述GUILayout.
在下面的章节中,我将介绍在使用GUI和GUILayout时可利用的不同控件这些类提供的默认控件是box,button,label,window,texture,scroll bars,sliders,textfield,textarea,toggle和toolbar
GUI.BUTTON
可能你最常用的控件之一就是按钮了.你可以使用GUI.Button()静态函数来创建一个按钮.这个函数用于将按钮渲染到屏幕上,当松开按钮时函数返回true.
这里值得一说的是GUI.Button函数只会在鼠标在按钮上按下并且在按钮上松开时才返回true,如果用户按下按钮移动鼠标在按钮外面释放鼠标,则函数不会返回TRUE,同样的如果用户按下了鼠标之后将光标移动到按钮上然后释放鼠标该函数也不会返回TRUE.要使该函数返回true,鼠标必须在按钮上按下并释放.
以下代码可用于使用按钮创建一个简单的等级选择屏幕(假定你在Build Settings对话框中有多个场景文件要设置)
LevelSelect.js
function OnGUI()
var groundWidth = 120;
var groundHeight = 150;
var screenWidth = Screen.
var screenHeight = Screen.
var groupx = (screenWidth - groundWidth) / 2;
var groupy = (screenHeight - groundHeight) / 2;
GUI.BeginGroup(Rect(groupx,groupy,groundWidth,groundHeight));
GUI.Box(Rect(0,0,groundWidth,groundHeight),"Level Select");
if(GUI.Button(Rect(10,30,100,30),"Level 1"))
Application.LoadLevel(1);
if(GUI.Button(Rect(10,70,100,30),"Level 2"))
Application.LoadLevel(2);
if(GUI.Button(Rect(10,110,100,30),"Level 3"))
Application.LoadLevel(3);
GUI.EndGroup();
}将脚本添加到空的场景中会产生如下结果:
你也许会想看看Unity脚本参考里的和,这些与控件类似但略有不同的功能.
GUI.Label()静态函数用于绘制一个标签.标签通常实在屏幕上指定位置绘制的文字.标签控件最常用的是在菜单屏幕中指定选项名称(比如文本框和文本域).
标签可包含文字,材质或者两者兼有(使用之前讲过的GUIContent结构)
下面的例子在屏幕上显示绘制了两个选项.选项名称和滑块的值使用标签呈现
OptionsMenu.js
#pragma strict
private var masterVolume:float = 1.0;
private var sfxVolume:float = 1.0;
function OnGUI()
var groupWidth = 380;
var groupHeight = 110;
var screenWidth = Screen.
var screenHeight = Screen.
var groupX = (screenWidth - groupWidth) / 2;
var groupY = (screenHeight - groupHeight) / 2;
GUI.BeginGroup(Rect(groupX,groupY,groupWidth,groupHeight));
GUI.Box(Rect(0,0,groupWidth,groupHeight),"Audio Settings");
GUI.Label(Rect(10,30,100,30),"Master Volume");
masterVolume = GUI.HorizontalSlider(Rect(120,35,200,30),masterVolume,0.0,1.0);
GUI.Label(Rect(330,30,50,30),"(" + masterVolume.ToString("f2") + ")");
GUI.Label(Rect(10,70,100,30),"Effect Volume");
sfxVolume = GUI.HorizontalSlider(Rect(120,75,200,30),sfxVolume,0.0,1.0);
GUI.Label(Rect(330,70,50,30),"(" + sfxVolume.ToString("f2") + ")");
GUI.EndGroup();
}OptionsMenu.js脚本运行结果如下:
你也应该改看看和这些控件允许你创建可编辑文字输入控件.
GUI.HorizontalSlider和GUI.verticalSlider
GUI.HorizontalSlider和GUI.verticalslider静态函数可相应的用于绘制水平和竖直滑块.滑块用于指定在一定范围内的一个数值.在上面的例子中,使用了两个水平滑块来指定主音量和音效范围为0到1
Slider函数接受当前滑块值和滑块最小值和滑块最大值.上面的例子展示了如何使用水平滑块,竖直滑块使用与水平滑块同样的参数只是滑块是竖直绘制而不是水平绘制.
下面的例子展示了使用竖直滑块来创建一个音频均衡器
#pragma strict
private var equalizerValues = new float[10];
function OnGUI()
var groupWidth = 320;
var groupHeight = 260;
var screenWidth = Screen.
var screenHeight = Screen.
var groupX = (screenWidth - groupWidth) / 2;
var groupY = (screenHeight - groupHeight) / 2;
GUI.BeginGroup(Rect(groupX,groupY,groupWidth,groupHeight));
GUI.Box(Rect(0,0,groupWidth,groupHeight),"Equalizer");
for(var i = 0; i & equalizerValues.L i++)
equalizerValues[i] = GUI.VerticalSlider(Rect(i * 30 + 20,30,20,200),equalizerValues[i],0.0,1.0);
GUI.EndGroup();
}结果应类似下面的:
当使用水平滑块时,最小值在滑块的左边最大值在滑块的右边.当使用竖直滑块时,最小值在顶部,最大值在滑块底部.
您可能也想看看和它们类似于滑块,但具有不同的功能。
GUI.WINDOW和GUI.DRAGWINDOW
GUI类提供了在屏幕上绘制窗口的函数,窗口可以使用外部函数(除了OnGUI)来渲染窗口的内容.
如果在窗口的回调函数中使用GUI.DragWindow函数,那窗口将会是可拖动的.
下面的代码创建了一个简单而可拖动的窗口
DraggableWindow.js
#pragma strict
//窗口的初始位置以及大小
private var windowRect0 = Rect(20,20,150,0);
function OnGUI()
//渲染窗口ID为0
windowRect0 = GUILayout.Window(0,windowRect0,WindowFunction,"Draggable Window");
function WindowFunction()
GUILayout.Label("This is a draggable window!");
//窗口的拖条(drag-strip),坐标相对于窗口的左上角
GUI.DragWindow(Rect(0,0,150,20));
}如果在新场景中将脚本应用到GameObject上,你就会看到窗口,点击并拖动窗口标题你就可以在屏幕上把窗口拖来拖去.
在窗口中可以放置任意数量的控件.如果你想要Unity在窗口中自动布局控件(就像例子中一样)那你应该使用GUILayout.Window函数而不是GUI.Window函数.当使用GUILayout.Window函数时,unity会自动修改窗口的高度以适应内容.就像上面的例子展示的一样.
在这里展示的绝大数例子,我都是用GUI类来创建菜单.GUI类需要我们手动地在屏幕上放置空间,在某些情况下,手动摆放控件很有用,但如果你想要unity为你自动布局控件,那你需要使用GUILayout类.这个类提供了许多像GUI一样的功能,但不要求你指定控件的大小
GUILayout.beginHorizontal和guilayout.beginVertical
默认情况下,当使用GUILayout函数时所有的视图中的组件都会竖直排列.你可以使用guilayout.beginhorizontal和guilayout.endhorizontal静态函数使控件相邻排放.每出现一次guilayout.BeginVertical必须有对应的GUILayout.EndVertical与其对应,每出现一次GUILayout.BeginHorizontal则必须有对应的GUILayouyudHorizontal与其对应
下面的例子展示了如何使用竖直和水平布局来创建复杂的表格
UserForm.js
#pragma strict
private var firstName:String = "First Name";
private var lastName:String = "Last Name";
private var age:uint = 0;
private var submitted:boolean =
private var windowRect0:R
function Start()
function OnGUI()
var screenWidth = Screen.
var screenHeight = Screen.
var windowWidth = 300;
var windowHeight = 180;
var windowX = (screenWidth - windowWidth) / 2;
var windowY = (screenHeight - windowHeight) / 2;
//将窗口放置到屏幕中间
windowRect0 = Rect(windowX,windowY,windowWidth,windowHeight);
GUILayout.Window(0,windowRect0,UserForm,"User information");
function UserForm()
GUILayout.BeginVertical();
//first name
GUILayout.BeginHorizontal();
GUILayout.Label("First Name",GUILayout.Width(80));
firstName = GUILayout.TextField(firstName);
GUILayout.EndHorizontal();
//last name
GUILayout.BeginHorizontal();
GUILayout.Label("Last Name",GUILayout.Width(80));
lastName = GUILayout.TextField(lastName);
GUILayout.EndHorizontal();
GUILayout.BeginHorizontal();
GUILayout.Label("Age",GUILayout.Width(80));
var ageText = GUILayout.TextField(age.ToString());
var newAge =
if(uint.TryParse(ageText,newAge))
age = newA
GUILayout.EndHorizontal();
if(GUILayout.Button("Submit"))
submitted =
if(GUILayout.Button("Reset"))
firstName = "First Name";
lastName = "Last Name";
submitted =
if(submitted)
GUILayout.Label("submitted!");
GUILayout.EndVertical();
}这段代码看上去挺复杂的.这里面有些东西如果你不熟悉脚本编写的话可能看起来不熟悉.需要强调的一点是我使用一个静态窗口(不可拖动)的来把控件据合起来.窗口需要一个绘制其内部结构的函数.为此我是用了UseForm函数.
用户表格开头使用竖直布局.因为当使用自动布局时竖直布局是默认的,所以显式的指定它是可有可无的.
之后每一个字段都是用水平布局创建,标签旁边跟着文本.标签被显式的使用GUILayout.Width()函数设置为80像素.我这样做是为了确保所有的文本都整洁的对齐.文本域扩展填充窗口的剩余部分.
在两个文本之后,添加了两个竖直布局的按钮.按钮将扩展填充区域其高度由按钮的内容决定.
不要忘了常使用GUILayout.EndVertical()或GUILayout.EndHorizontal()函数结果竖直或水平布局.
脚本UserForm.js将会产生如下结果:
你可能也想看看,和.所有的这些函数都可以被用于创建组(或者可以自动布局的区域),这些组或者区域可以用于保持控件在特定区域内聚合起来.
样式和皮肤
unity为所有的GUI控件提供了默认的外观.作为一个快速解决方案的话默认的样式足够用了,但你可能不想在你要面市的游戏中使用unity的默认GUI样式.
使用自定义的GUISkin你可以更改按钮,标签,滑块,和滚动条的外观.
GUISkin是一个套件(asset),你可以从主菜单中选择Assets&Create&GUISkin来创建它.
如果你在项目视图(project view)里选择了GUISkin,你可以为你可创建的多种控件编辑单独的样式设置.
要使用你自定义的皮肤将默认皮肤替换掉,在GUI脚本里面设置GUI.skin属性为你自定义的皮肤.将GUI.skin属性设置为null将还原回默认的GUISkin.
GUISkin只是一系列GUIStyle样式的集合.GUIStyle定义了一个控件所有可变状态的样式.一个控件有以下状态:
正常状态:控件的默认状态.鼠标既没有悬停到控件上控件也没有获得系统焦点.悬停状态:鼠标当前悬停在控件上注视状态:当前正选择控件,选中的控件将会接受键盘输入.这个状态对于按钮和可编辑文本控件.活动状态:控件被点击,这个状态对于按钮,滑块和滚动条都是合法的.GUIStyle可以在没有GUISkin的情况下使用以便改写控件的样式.要使用GUIStyle,简单的在脚本中创建一个GUIStyle类型的公开变量并在检视器(inspecot),当你想要为控件应用样式.简单把样式作为控件函数的最后一个参数数传进去就行.
作为练习,下载下面的Unity包并将其导入一个新的Unity工程中:
使用下面代码,创建一个名称为LevelSelect.js的脚本.
LevelSelect.js
#pragma strict
function OnGUI()
var groundWidth = 120;
var groundHeight = 150;
var screenWidth = Screen.
var screenHeight = Screen.
var groupx = (screenWidth - groundWidth) / 2;
var groupy = (screenHeight - groundHeight) / 2;
GUI.BeginGroup(Rect(groupx,groupy,groundWidth,groundHeight));
GUI.Box(Rect(0,0,groundWidth,groundHeight),"Level Select");
if(GUI.Button(Rect(10,30,100,30),"Level 1"))
Application.LoadLevel(1);
if(GUI.Button(Rect(10,70,100,30),"Level 2"))
Application.LoadLevel(2);
if(GUI.Button(Rect(10,110,100,30),"Level 3"))
Application.LoadLevel(3);
GUI.EndGroup();
}你可能注意到这就是上面按钮例子里面的代码,但是现在我们要为这些按钮设置一套自定的皮肤.
在检视器(inspector)中,在Button Style属性中设置如下选项:
Normal.Background: roundedButton_Normal.psdNormal.Text Color: (0, 0, 0, 255)Hover.Background: roundedButton_Hover.psdHover.Text Color: (0, 0, 0, 255)Active.Background: roundedButton_Active.psdActive.Text Color: (80, 80, 255, 255)Border.Left: 6Border.Right: 6Border.Top: 6Border.Bottom: 6Padding.Left: 6Padding.Right: 6Padding.Top: 12Padding.Bottom: 6Font: SHOWGAlignment: Middle Center你会得到类似于下面的展示的.
下面是一个交互demo,它展示了如何使用多种控件,demo包含如下场景:
GUI基础:描述了OnGUI函数并展示了一个使用按钮和箱子(box)组件的例子控件:这个场景展示了多种你能创建的组件自定义:如何创建皮肤和样式布局:讲述了固定和自动布局模式.也展示了一个使用竖直和水平布局的例子扩展Unity编辑器:这个场景展示了一个如何在unity中创建自定义编辑器窗口.下载这个unity工程并将其加载到Unity来看自定义的编辑器窗口.
下载并解压zip文件,在unity编辑器中打开Assets/Scenes/Introduction.unity场景文件.
unity3D游戏开发十三之GUI
Unity-使用GUI绘制进度条或者血条
【Unity 3D】学习笔记十:GUI Skin(图形用户界面皮肤)
Unity-GUI创建控件时控制位置
Unity3D之OnGUI知识总结
Unity3d-GUI入门
[unity] OnGUI
【unity实用技能】Unity3D之OnGUI知识总结
unity 编辑器界面能调用OnGUI和Update等函数
没有更多推荐了,怎么样使&textarea&里的内容,在接收的时候保留空格和换行?
[问题点数:0分]
本版专家分:15
结帖率 100%
CSDN今日推荐
本版专家分:1135
本版专家分:18667
本版专家分:14252
本版专家分:818
本版专家分:2669
本版专家分:15
本版专家分:11
本版专家分:7772
2005年6月 Java大版内专家分月排行榜第三
本版专家分:15
本版专家分:4493
本版专家分:2669
本版专家分:15
本版专家分:1505
本版专家分:1505
本版专家分:0
本版专家分:509
本版专家分:15
本版专家分:15
本版专家分:6108
本版专家分:15
匿名用户不能发表回复!|
其他相关推荐
/**转义html
public static String encodeHTML(String s) {
if (s == null) {
char[] ac = new char[s.length()];
s.getChars(0, s.length(), ac, 0);
StringBuffer stringbuffer = n
兼容性:IE9以上、FF、chrome在换行处匹配/\n/
IE7-8在换行处先匹配/\r/,再匹配/\n/
name=&& id=&test_new_line& cols=&30& rows=&10&&
type=&button& id=&submit& value=&提交&/&
id=&result&&
经常用到textarea 控件 而 textarea控件的内容往往需要自动换行 不然客户体验就比较差啦 其实也比较的简单 添加两个属性 如下:
wrap=&hard&
这个是将软换行换行提交到服务器上去
style=&word-wrap : break-&
刚发了一篇博客,然后发现csdn在发布用户的文章时好像没有处理输入的换行和空格,之前没有很在意,因为这次我辛苦缩进的代码居然显示一团糟,有点接受不了,鉴于最近做的需求遇到了这个问题,所以说一下这个问题,鉴于开发是在windows下的,linux和苹果有空再测试一下,因为不同的操作系统对换行的表示不一样。
其实这个处理那挺简单的,用一句代码就可以解决了,“your string”.replace(
项目中有一个需求,就是保留textarea中的换行,在网页中按原格式显示。
由于textarea中的换行为“\r\n&, 用js获取textarea中的内容保存到数据库中时,“\r\n&变成了空格。
当将数据库中的数据传递到html页面时,又会自动加上”\r\n“, 但是由于html能识别的换行符为”&.因此有必要对textarea中的字符串进行处理。
1.在存储到数据库之前,将“\
解决jsp中textarea 输入显示的问题( 包括回车、换行、空格 )
package com.work.
* 解决jsp中textarea 输入显示的问题( 包括回车、换行、空格 )
public class TextareaDemo {
public static void main(String[] args) {
为大家介绍html中textarea对象的换行问题,强制换行、自动换行,有需要的朋友可以参考下。
将以下样式加到显示的table标签中,会按照表格的大小强制换行:
style= &table-layout:word-break:break-all &
另外,textarea自动换行的设置,请参考如下的介绍。
通常情况下,当用户在输入文本区域中键入文本后,浏览器会将它
var text = $('#theId').val();
var tempText = text.replace(new RegExp('\n',&gm&),'');
如何使得textarea中的字体,显示换行效果等
两种方案:
(1)将内容放入到textarea的控件中显示即可。此方法可以用于新增,修改一个页面的情况下。
(2)将内容用标签包裹起来即可,这里需要控制标签的样式才能显示出换行的效果:
white-space: pre-
/* css-3 */
white-space: -moz-p
问题现状:
网页开发的过程中需要提供一个文本框给用户输入一段内容,但内容长度有限还没有到使用富文本编辑器插件的地步。因此提供了一个textarea供用户输入。
在调试过程中发现,textarea中的内容在换行的时候html,js都能正确识别出换行。但是当把内容插入数据库后,再读取数据库内容出来到html页面展示的时候换行就丢失了。
去数据库里查询实际插入的内容也发现,实际上插入到数据java swing 之 JScrollPane(滚动面板)的使用
* java swing 之JScrollPane面板
* 在设置界面时,可能会遇到在一个较小的容器窗体中显示一个较大部分的内容,这时可以使用
* JScrollPane面板,JscrollPane面板是带滚动条的面板,也是一种容器,但是常用于布置单个
* 控件,并且不可以使用布局管理器。如果需要在JScrollPane面板中放置多个控件,需要将多个
* 控件放置到JPanel 面板上,然后将JPanel面板作为一个整体控件添加到JScrollPane控件上。
* @author gao
package com.
import java.awt.BorderL
import javax.swing.JF
import javax.swing.JP
import javax.swing.JScrollP
import javax.swing.JTextA
import javax.swing.border.EmptyB
public class JScrollPaneDemo extends JFrame{
private JPanel contentP
private JScrollPane scrollP
private JTextArea textA
public JScrollPaneDemo(){
contentPane=new JPanel();
contentPane.setBorder(new EmptyBorder(5,5,5,5));
contentPane.setLayout(new BorderLayout(0,0));
this.setContentPane(contentPane);
scrollPane=new JScrollPane();
contentPane.add(scrollPane,BorderLayout.CENTER);
textArea=new JTextArea();
//scrollPane.add(textArea);
scrollPane.setViewportView(textArea);
this.setTitle("滚动面板使用");
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setBounds(100, 100, 250, 200);
this.setVisible(true);
public static void main(String []args){
JScrollPaneDemo example=new JScrollPaneDemo();骨宜刚、气宜柔、志宜大、胆宜小、心宜虚、言宜实、慧宜增、福宜惜、虑不远、忧亦近...
JAVA图形界面(GUI)之常用组件
前面提到容器是用来组织组件的,那么这一篇博客就为大家介绍一些Java的常用组件。最后通过一个例子展示这些组件的实际效果。
按钮(JButton)
JButton是我们常用的一个组件,其表现形式为一个按钮。
创建不带有设置文本或图标的按钮
JButton(Action a)
创建一个按钮,其属性从所提供的 Action 中获取
JButton(Icon icon)
创建一个带图标的按钮
JButton(String text)
创建一个带文本的按钮
JButton(String text, Icon icon)
创建一个带初始文本和图标的按钮
按钮(JToggleButton)
JToggleButton与JButton的区别在于JToggleButton有两个状态:按下和弹起。
JToggleButton()
创建最初未选定的切换按钮,不设置文本或图像
JToggleButton(Action a)
创建一个切换按钮,其属性从所提供的 Action 获取
JToggleButton(Icon icon)
创建一个最初未选定的切换按钮,该按钮具有指定的图像但是没有文本
JToggleButton(Icon icon, boolean selected)
创建具有指定图像和选择状态但没有文本的切换按钮
JToggleButton(String text)
创建具有指定文本的未选定的切换按钮
JToggleButton(String text, boolean selected)
创建具有指定文本和选择状态的切换按钮
JToggleButton(String text, Icon icon)
创建一个最初未选定的切换按钮,该按钮具有指定的文本和图像。
JToggleButton(String text, Icon icon, boolean selected)
创建具有指定文本、图像和选择状态的切换按钮
标签(JLabel)
用于短文本字符串或图像或二者的显示区。
创建无图像并且其标题为空字符串的 JLabel
JLabel(Icon image)
创建具有指定图像的 JLabel 实例
JLabel(Icon image, int horizontalAlignment)
创建具有指定图像和水平对齐方式的 JLabel 实例
JLabel(String text)
创建具有指定文本的 JLabel 实例
JLabel(String text, Icon icon, int horizontalAlignment)
创建具有指定文本、图像和水平对齐方式的 JLabel 实例
JLabel(String text, int horizontalAlignment)
创建具有指定文本和水平对齐方式的 JLabel 实例
复选框(JCheckBox)
复选框的实现,复选框是一个可以被选定和取消选定的项,它将其状态显示给用户。
JCheckBox()
创建一个没有文本、没有图标并且最初未被选定的复选框
JCheckBox(Action a)
创建一个复选框,其属性从所提供的 Action 获取
JCheckBox(Icon icon)
创建有一个图标、最初未被选定的复选框
JCheckBox(Icon icon, boolean selected)
创建一个带图标的复选框,并指定其最初是否处于选定状态
JCheckBox(String text)
创建一个带文本的、最初未被选定的复选框
JCheckBox(String text, boolean selected)
创建一个带文本的复选框,并指定其最初是否处于选定状态
JCheckBox(String text, Icon icon)
创建带有指定文本和图标的、最初未选定的复选框
JCheckBox(String text, Icon icon, boolean selected)
创建一个带文本和图标的复选框,并指定其最初是否处于选定状态
单选按钮(JRadioButton)
实现一个单选按钮,此按钮项可被选择或取消选择,并可为用户显示其状态。与 ButtonGroup 对象配合使用可创建一组按钮,一次只能选择其中的一个按钮。
JRadioButton()
创建一个初始化为未选择的单选按钮,其文本未设定
JRadioButton(Action a)
创建一个单选按钮,其属性来自提供的 Action
JRadioButton(Icon icon)
创建一个初始化为未选择的单选按钮,其具有指定的图像但无文本
JRadioButton(Icon icon, boolean selected)
创建一个具有指定图像和选择状态的单选按钮,但无文本
JRadioButton(String text)
创建一个具有指定文本的状态为未选择的单选按钮
JRadioButton(String text, boolean selected)
创建一个具有指定文本和选择状态的单选按钮
JRadioButton(String text, Icon icon)
创建一个具有指定的文本和图像并初始化为未选择的单选按钮
JRadioButton(String text, Icon icon, boolean selected)
创建一个具有指定的文本、图像和选择状态的单选按钮
文本框(JTextField)
JTextField 是一个轻量级组件,它允许编辑单行文本。
JTextField()
构造一个新的 TextField
JTextField(Document doc, String text, int columns)
构造一个新的 JTextField,它使用给定文本存储模型和给定的列数
JTextField(int columns)
构造一个具有指定列数的新的空 TextField
JTextField(String text)
构造一个用指定文本初始化的新 TextField
JTextField(String text, int columns)
构造一个用指定文本和列初始化的新 TextField
密码框(JPasswordField)
JPasswordField 是一个轻量级组件,允许编辑单行文本,其视图指示键入内容,但不显示原始字符。
JPasswordField()
构造一个新 JPasswordField,使其具有默认文档、为 null 的开始文本字符串和为 0 的列宽度
JPasswordField(Document doc, String txt, int columns)
构造一个使用给定文本存储模型和给定列数的新 JPasswordField
JPasswordField(int columns)
构造一个具有指定列数的新的空 JPasswordField
JPasswordField(String text)
构造一个利用指定文本初始化的新 JPasswordField
JPasswordField(String text, int columns)
构造一个利用指定文本和列初始化的新 JPasswordField
文本域(JTextArea)
JTextArea 是一个显示纯文本的多行区域。
JTextArea()
构造新的 TextArea
JTextArea(Document doc)
构造新的 JTextArea,使其具有给定的文档模型,所有其他参数均默认为 (null, 0, 0)
JTextArea(Document doc, String text, int rows, int columns)
构造具有指定行数和列数以及给定模型的新的 JTextArea
JTextArea(int rows, int columns)
构造具有指定行数和列数的新的空 TextArea
JTextArea(String text)
构造显示指定文本的新的 TextArea。
JTextArea(String text, int rows, int columns)
构造具有指定文本、行数和列数的新的 TextArea
例子仅仅展示上述组件的显示状态。
import javax.swing.JB
import javax.swing.JCheckB
import javax.swing.JF
import javax.swing.JL
import javax.swing.JP
import javax.swing.JPasswordF
import javax.swing.JRadioB
import javax.swing.JTextA
import javax.swing.JTextF
import javax.swing.JToggleB
public class SwingDemo extends JFrame
public SwingDemo()
super("SwingDemo");
JPanel root = new JPanel();
root.add(new JButton("我是JButton"));
root.add(new JToggleButton("我是JToggleButton"));
root.add(new JLabel("我是JLabel"));
root.add(new JCheckBox("我是JCheckBox"));
root.add(new JRadioButton("我是JRadioButton"));
root.add(new JTextField("我是JTextField"));
root.add(new JPasswordField("我是JPasswordField"));
root.add(new JTextArea("我是JTextArea"));
add(root);
setSize(400, 300);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
public static void main(String[] args)
new SwingDemo();
运行效果:
扫码向博主提问
非学,无以致疑;非问,无以广识
擅长领域:
Unity3D自学笔记——GUI组件的应用
MATLAB 的GUI组件
GUI Swing 组件常用方法
JAVA图形界面(GUI)
java gui图形界面编程(几乎包含所有常用的控件及布局)
GUI标准组件及事件处理
GUI--Swing组件(1)
没有更多推荐了,}

我要回帖

更多关于 c中将文件分为 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信