jqGrid学习

jqGrid学习
jqGrid学习

jqGrid学习

jqGrid学习之 ------------- 安装

jqGrid安装很简单,只需把相应的css、js文件加入到页面中即可。

按照官网文档:

*

/myproject/css/

o

ui.jqgrid.css

o

/ui-lightness/

+

/images/

+

jquery-ui-1.7.2.custom.css

*

/myproject/js/

o

/i18n/

+

grid.locale-bg.js

+

list of all language files

+

….

o

Changes.txt

o

jquery-1.3.2.min.js

o

jquery.jqGrid.min.js

目录结构如上。

在页面中写法:

My First Grid

...

jqGrid学习之 --------- 皮肤

jqGrid皮肤

从3.5版本开始,jqGrid完全支持jquery UI的theme。我们可以从

https://www.360docs.net/doc/a019050416.html,/themeroller/下载我们所需要的theme。当然,你也可以编辑自己的theme。jqGrid

也并不需要把所有的css文件都引入进来,只需导入核心css文件

“ui.theme.css ” 以及“ui.core.css”即可,文件位于目录

development-bundle/themes下。

jqGrid学习 ----------------- 第一个实例 | jqGrid学习之 --------- 皮肤2009-12-03

jqGrid学习 ----------- 原理

jqGrid是典型的B/S架构,服务器端只是提供数据管理,客户端只提供数据显示。换句话说,jqGrid可以以一种更加简单的方式来展现你数据库的信息,而且也可以把客户端数据传回给服务器端。

对于jqGrid我们所关心的就是:必须有一段代码把一些页面信息保存到数据库中,而且也能够把响应信息返回给客户端。jqGrid是用ajax来实现对请求与响应的处理。

jqGrid学习 ----------------- 第一个实例

1、html文件

My First Grid

jqGrid需要我们事先指定一个table对象,且有一个唯一的id属性。其他表格属性比如Cellspacing、cellpadding跟border 不要自己设置,jqGrid会设置。因为我们要分页,所以要定义一个分页的div对象,同样必须有id属性。

jqGrid的用法:

Java代码

jQuery('#grid_selector').jqGrid( options )

grid_selector就是table的id值,

optoins是一个json对象:

Java代码

{

url:WEB_PATH+'/example/JqGridExample.action',

//url:WEB_PATH+'/excludes/post.jsp',

datatype: 'json',

colNames:['编号','姓名','密码','年龄','地址','出生日期'], colModel:[

{name:'id',index:'id', width:90,sorttype:"int"},

{name:'username',index:'name',

width:110,sorttype:"int"},

{name:'password',index:'password', width:80},

{name:'age',index:'age', width:80},

{name:'address',index:'address', width:80},

{name:'time',index:'time', width:80,sorttype:"date"} ],

imgpath:

WEB_PATH+'/resources/javascript/plugins/jqgrid/css/smoothness/i mages',

rowNum:10,

rowList:[10,20,30],

pager: "pjmap",

multiselect: false,

sortname: 'id',

viewrecords: true,

sortorder: "desc",

jsonReader: {

root: "dataRows",

repeatitems : false

},

caption: "jqGrid test",

height: 220

}

4、服务端文件

Java代码

package com.test.json.action;

import java.util.ArrayList;

import java.util.HashMap;

import java.util.List;

import java.util.Map;

import org.apache.struts2.json.annotations.JSON;

import net.sf.json.JSONArray;

import net.sf.json.JSONObject;

import com.web.action.BaseAction;

public class JqGridAction extends BaseAction {

/**

*

*/

private static final long serialVersionUID = 1L; private int page = 1;

private int total = 3;

private int rows = 0;

private List dataRows = new ArrayList();

public String execute()

{

JSONArray t_list = new JSONArray();

for(int i=0;i<3;i++){

JSONObject student = new JSONObject(); //Map student = new HashMap();

student.put("username","王三");

student.put("password","123");

student.put("age",20+i);

student.put("address","USA");

student.put("id",i);

dataRows.add(i,student);

}

//JSONArray ay =JSONArray.fromObject(rows);

System.out.println("tttttttttttt======"+t_list.toString());

//this.outJsonString(t_list.toString() );

return SUCCESS;

}

//@JSON(serialize=false)

public int getPage()

{

return page;

}

public void setPage(int page)

{

this.page = page;

}

//@JSON(serialize=false)

public int getTotal()

{

return total;

}

public void setTotal(int total) {

this.total = total;

}

//@JSON(serialize=false)

public int getRows()

{

return rows;

}

public void setRows(int rows) {

this.rows = rows;

}

public List getDataRows()

return dataRows;

}

public void setDataRows(List dataRows)

{

this.dataRows = dataRows;

}

}返回的json数据格式:

Java代码

{"dataRows":[{"password":"123","age":20,"address":"USA","userna me":"王三

","id":0},{"password":"123","age":21,"address":"USA","username"

:"王三

","id":1},{"password":"123","age":22,"address":"USA","username"

:"王三","id":2}],"page":1,"rows":10,"total":3}

jqGrid学习 ------------------ jqGrid参数

url 获取数据的地址

datatype 从服务器端返回的数据类型,默认xml。可选类型:xml,local,json,jsonnp,script,xmlstring,jsonstring,clientside

mtype ajax提交方式。POST或者GET,默认GET colNames 列显示名称,是一个数组对象。

colModel 对显示列属性的设置,是一个数组对象。常用到的属性:name列显示的名称;index传到服务器端用来排序用的列名称;width列宽度;align对齐方式;sortable是否可以排序

pager 定义翻页用的导航栏,必须是有效的html元素。翻页工具栏可以放置在html页面任意位置

rowNum 在grid上显示记录条数,这个参数是要被传递到后台

rowList 一个下拉选择框,用来改变显示记录数,当选择时会覆盖rowNum 参数传递到后台

sortname 默认的排序列。可以是列名称或者是一个数字,这个参数会被提交到后台

viewrecords 定义是否要显示总记录数caption 表格名称

jqGrid学习 ----------- 参数(2)

参数名称参数

类型

描述默认值

ajaxGrid Options obje

ct

对ajax参数进行全局设置,可以覆盖ajax事件:

error,complete 和 beforeSend

空值是

ajaxGrid Options obje

ct

对ajax参数进行全局设置空值是

ajaxSele ctOption s obje

ct

对ajax的select参数进行全局设置,设置

editoptions跟searchoptions 参数的select

属性值

空值是

altclass Stri

ng

用来指定行显示的css,可以编辑自己的css文

件,只有当altRows设为 ture时起作用

ui-priorit

y-secondar

y

altRows bool

ean

设置表格 zebra-striped 值false

autoenco de bool

ean

当为 ture 时对url进行编码false 是

autowidt h bool

ean

如果为ture时,则当表格在首次被创建时会根

据父元素比例重新调整表格宽度。如果父元素宽

度改变,为了使表格宽度能够自动调整则需要实

现函数:setGridWidth

false 否

caption Stri

ng

定义表格名称空值

ap

i

cellLayo ut inte

ger

定义了单元格padding + border 宽度。通常不

必修改此值。初始值为5,

paddingLef?2+paddingRight?2+borderLeft?

1=5

5 否

cellEdit bool

ean

启用或者禁用单元格编辑功能false 是

cellsubm it Stri

ng

定义了单元格内容保存位置:“remote”,

“clientArray”

‘remote’是

cellurl Stri

ng

单元格提交的url 空值是

colModel arra

y

描述列信息的数组空值否

colNames arra

y[]

放置列名称的数组,必须与colModel大小相同空数组否

datastr Stri

ng

xmlstring或者jsonstring 空值是

datatype stri

ng

表格可以被接受的数据类型:xml,xmlstring,

json,local,function

xml 是

deselect AfterSor t bool

ean

只有当datatype为local时起作用。当排序时

不选择当前行

true 是

directio n stri

ng

表格中文字的显示方向,从左向右(ltr)或者

从右向左(rtr)。

ltr 否

editurl stri

ng

定义对form编辑时的url 空值是

emptyrec ords stri

ng

当返回的数据行数为0时显示的信息。只有当属

性 viewrecords 设置为ture时起作用

在语言包中是

ExpandCo lClick bool

ean

当为true时,点击展开行的文本时,treeGrid

就能展开或者收缩,不仅仅是点击图片

true 否

ExpandCo lumn stri

ng

指定那列来展开tree grid,默认为第一列,只

有在treeGrid为true时起作用

空值否

footerro w bool

ean

当为true时,会在翻页栏之上增加一行false 否

forceFit bool

ean

当为ture时,调整列宽度不会改变表格的宽度。

当shrinkToFit 为false时,此属性会被忽略

false 否

gridstat e stri

ng

定义当前表格的状态:'visible' or 'hidden' visible 否

gridview bool

ean

构造一行数据后添加到grid中,如果设为true

则是将整个表格的数据都构造完成后再添加到

grid中,但treeGrid, subGrid, or

afterInsertRow 不能用

false 是

height mixe

d

表格高度,可以是数字,像素值或者百分比150 否

hiddengr id bool

ean

当为ture时,表格不会被显示,只显示表格的

标题。只有当点击显示表格的那个按钮时才会去

初始化表格数据。只有当caption 属性不为空而

且hidegrid为ture时才起作用

false 否

hidegrid bool

ean

启用或者禁用控制表格显示、隐藏的按钮,只有

当caption 属性不为空时起效

true 否

hoverrow s bool

ean

当为false时mouse hovering会被禁用false 是

jsonRead er arra

y

描述json 数据格式的数组,否

lastpage inte

ger

只读属性,定义了总页数0 否

lastsort inte

ger

只读属性,定义了最后排序列的索引,从0开始0 否

loadonce bool

ean

如果为ture则数据只从服务器端抓取一次,之

后所有操作都是在客户端执行,翻页功能会被禁

false 否

loadtext stri

ng

当请求或者排序时所显示的文字内容

Loading...

.

loadui stri

ng

当执行ajax请求时要干什么。disable禁用ajax

执行提示;enable默认,当执行ajax请求时的

提示;block启用Loading提示,但是阻止其他

操作

enable 是

mtype stri

ng

请求的类型:(“POST” or “GET”)GET 是

multikey stri

ng

只有在multiselect设置为ture时起作用,定

义使用那个key来做多选。shiftKey,altKey,

ctrlKey

空值是

multibox only bool

ean

只有当multiselect = true.起作用,当

multiboxonly 为ture时只有选择checkbox才

会起作用,

false 是

multisel ect bool

ean

定义是否可以多选false 否

multisel ectWidth inte

ger

当multiselect为true时设置multiselect列

宽度

20 否

page inte

ger

设置初始的页码 1 是

pager mixe

d

指定分页栏对象,必须为一个有效的html元素。

可以是'pager', '#pager', jQuery('#pager').

推荐用'#pager'

空值否

pagerpos stri

ng

指定分页栏的位置center 否

pgbutton s bool

ean

是否显示翻页按钮true 否

pginput bool

ean

是否显示跳转页面的输入框true 否

pgtext stri

ng

当前页信息

语言包中设

prmNames arra

y

Default valuesprmNames:

{page:“page”,rows:“rows”, sort:

“sidx”,order: “sord”,

search:“_search”, nd:“nd”, npage:null}

当参数为null时不会被发到服务器端

none 是

postData arra

y

此数组内容直接赋值到url上,参数类型:

{name1:value1…}

空array 是

reccount inte

ger

只读属性,定义了grid中确切的行数。通常情

况下与records属性相同,但有一种情况例外,

假如rowNum=15,但是从服务器端返回的记录数

是20,那么records值是20,但reccount值仍

然为15,而且表格中也只显示15条记录。

0 否

recordpo s stri

ng

定义了记录信息的位置: left, center, right right 否

records inte

ger

只读属性,定义了返回的记录数none 否

recordte xt stri

ng

显示记录数信息。{0} 为记录数开始,{1}为记

录数结束。 viewrecords为ture时才能起效,

语言包是

且总记录数大于0时才会显示此信息

resizecl ass stri

ng

定义一个class到一个列上用来显示列宽度调整

时的效果

空值否

rowList arra

y[]

一个数组用来调整表格显示的记录数,此参数值

会替代rowNum参数值传给服务器端。如果为空

则不显示,设置格式:[10,20,30]。

[] 否

rownumbe rs bool

ean

如果为ture则会在表格左边新增一列,显示行

顺序号,从1开始递增。此列名为'rn'.

false 否

rowNum inte

ger

设置表格中显示的记录数,参数会被自动传到后

台。如果此参数设为10,但是从服务器端返回

15条记录,那么在表格中只会显示10条记录。

如果设为-1则禁用此检查

20 是

rownumWi dth inte

ger

如果rownumbers为true,则可以设置column的

宽度

25 否

savedRow arra

y

只读属性,只用在编辑模式下保存数据空值否

scroll bool

ean

or

inte

ger

创建一个动态滚动的表格,当为true时,翻页

栏被禁用,使用垂直滚动条加载数据,且在首次

访问服务器端时将加载所有数据到客户端。当此

参数为数字时,表格只控制可见的几行,所有数

据都在这几行中加载

false 否

scrollOf fset inte

ger

设置垂直滚动条宽度18 否

scrollro ws bool

ean

当为true时让所选择的行可见false 是

selarrro w arra

y-[]

只读属性,用来存放当前选择的行

empty array

[]

selrow stri

ng

只读属性,最后选择行的id null 否

shrinkTo Fit bool

ean

此属性用来说明当初始化列宽度时候的计算类

型,如果为ture,则按比例初始化列宽度。如果

为false,则列宽度使用colModel指定的宽度

true 否

sortable bool

ean

是否可排序false 否

sortname stri

ng

排序列的名称,此参数会被传到后台空字符串是

sortorde r stri

ng

排序顺序,升序或者降序(asc or desc)asc 是

subGrid bool

ean

是否使用suggrid false 否

subGridM arra subgrid模型empty array 否

odel y-[]

subGridT ype mixe

d

如果为空则使用表格的dataType null 是

subGridU rl stri

ng

加载subgrid数据的url,jqGrid会把每行的id

值加到url中

空值是

subGridW idth inte

ger

subgrid列的宽度20 否

toolbar arra

y

表格的工具栏。数组中有两个值,第一个为是否

启用,第二个指定工具栏位置(相对于body

layer),如:[true,”both”] 。工具栏位置

可选值:“top”,”bottom”, “both”. 如果

工具栏在上面,则工具栏id为“t_”+表格id;

如果在下面则为“tb_”+表格id;如果只有一

个工具栏则为“t_”+表格id

[false,''] 否

totaltim e inte

ger

只读属性,计算加载数据的时间。目前支持xml

跟json数据

0 否

treedata type mixe

d

数据类型,通常情况下与datatype相同,不会

null 否

treeGrid bool

ean

启用或者禁用treegrid模式false 否

treeGrid Model stri

ng

treeGrid所使用的方法nested 否

treeIcon s arra

y

树的图标,默认值:

{plus:'ui-icon-triangle-1-e',minus:'ui-ic

on-triangle-1-s',leaf:'ui-icon-radio-off'

}

treeRead er arra

y

扩展表格的colModel且加在colModel定义的后

tree_roo t_level nume

ric

root元素的级别,0 否

url stri

ng

url null 是

userData arra

y

从request中取得的一些用户信息empty array 否

userData OnFooter bool

ean

当为true时把userData放到底部,用法:如果

userData的值与colModel的值相同,那么此列

就显示正确的值,如果不等那么此列就为空

false 是

viewreco rds bool

ean

是否要显示总记录数false 否

viewsort cols arra

y

定义排序列的外观跟行为。数据格式:

[false,'vertical',true].第一个参数是说,是

否都要显示排序列的图标,false就是只显示当前排序列的图标;第二个参数是指图标如何显示,vertical:排序图标垂直放置,horizontal:排序图标水平放置;第三个参数指单击功能,true:单击列可排序,false:单击图标排序。说明:如果第三个参数为false则第一个参数必须为ture否则不能排序

width numb

er

如果设置则按此设置为主,如果没有设置则按

colModel中定义的宽度计算

none 否

xmlReade r arra

y

对xml数据结构的描述否

jqGrid学习 -------------- ColModel API

ColModel 是jqGrid里最重要的一个属性,设置表格列的属性。

用法:

Java代码

1.jQuery("#gridid").jqGrid({

2....

3. colModel: [ {name:'name1', index:'index1'...}, {...}, ... ],

4....

5.});

属性数据类型备注默认值

align string 定义单元格对齐方式;可选值:left,

center, right.

left

classes string 设置列的css。多个class之间用空格分隔,

如:'class1 class2' 。表格默认的css属

性是ui-ellipsis

empty

string

datefmt string 对日期列进行格式化。”/”, ”-”,

and ”.”都是有效的日期分隔符。y,Y,yyyy

年YY, yy 月m,mm for monthsd,dd 日.

ISO Date

(Y-m-d)

defval string 查询字段的默认值空editable boolean 单元格是否可编辑false

editoptions array 对列进行编辑时设置的一些属性empty array

editrules array 对于可编辑单元格的一些额外属性设置empty array

edittype string 可以编辑的类型。可选值:text, textarea, select, checkbox, password, button,

text

image and file.

fixed boolean 列宽度是否要固定不可变false formoptions array 对于form进行编辑时的属性设置empty formatoptions array 对某些列进行格式化的设置none formatter mixed 对列进行格式化时设置的函数名或者类型none hidedlg boolean 是否显示或者隐藏此列false hidden boolean 在初始化表格时是否要隐藏此列false

index string 当排序时定义排序字段名称的索引,参数名

为sidx

empty

string

jsonmap string 定义了返回的json数据映射none

key boolean 当从服务器端返回的数据中没有id时,将

此作为唯一rowid使用,默认只能有一个id

属性

false

label string 如果colNames为空则用此值来作为列的显

示名称,如果都没有设置则使用name 值

none

name string 必输项,表格列的名称,所有关键字,保留

字都不能作为名称使用包括subgrid, cb

and rn.

Required

resizable boolean 是否可以被resizable true

search boolean 在搜索模式下,定义此列是否可以作为搜索

true

searchoptions array 设置搜索参数empty sortable boolean 是否可排序true

sorttype string 用在当datatype为local时,定义搜索列

的类型,可选值:int/integer - 对integer

排序float/number/currency - 排序数字

date - 排序日期text - 排序文本

text

stype string 定义搜索元素的类型text

surl string 搜索数据时的url empty string

width number 默认列的宽度,只能是象素值,不能是百分

150

xmlmap string 定义当前列跟返回的xml数据之间的映射关

none

unformat function ‘unformat’单元格值null

有一些参数当表格初始化完成后是不能被修改的: *

name

*

width

*

resizable

*

label (method avail.)

jqGrid学习 ----------- 数据

jqGrid可支持的数据类型:xml、json、jsonp、local or clientSide、xmlstring、jsonstring

、script、function (…)。

Json数据

需要定义jsonReader来跟服务器端返回的数据做对应,其默认值:

Java代码

1.jQuery("#gridid").jqGrid({

2....

3. jsonReader : {

4. root: "rows",

5. page: "page",

6. total: "total",

7. records: "records",

8. repeatitems: true,

9. cell: "cell",

10. id: "id",

11. userdata: "userdata",

12. subgrid: {root:"rows",

13. repeatitems: true,

14. cell:"cell"

15. }

16. },

17....

18.});

这样服务器端返回的数据格式:

Java代码

1.{

2. total: "xxx",

3. page: "yyy",

4. records: "zzz",

5. rows : [

6. {id:"1", cell:["cell11", "cell12", "cell13"]},

7. {id:"2", cell:["cell21", "cell22", "cell23"]},

8. ...

9. ]

10.}

jsonReader的属性

total 总页数

page 当前页

records 查询出的记录数

rows 包含实际数据的数组

id 行id

cell 当前行的所有单元格

* root

这个元素指明表格所需要的数据从哪里开始。

Java代码

1.jQuery("#gridid").jqGrid({

2....

3. jsonReader : {root:"invdata"},

4....

5.});

从服务器端返回数据格式为:

Java代码

1.{

2. total: "xxx",

3. page: "yyy",

4. records: "zzz",

5. invdata : [

6. {id:"1", cell:["cell11", "cell12", "cell13"]},

7. {id:"2", cell:["cell21", "cell22", "cell23"]},

(整理)单选按钮切换图表.

1点击按钮切换图表 2首先新建一个变量:图表切换,表达式:ParamValue('pTabToShow') 3建两个值:柱图,列表(饼图用值:其它) 4然后在条件中》属性》块变量选择变量:图表切换,会有三个块:其它,柱图,列表

5然后拖一个表个放四个html项目到表格 6Html 代码: 1. 2. 3. 4. 7最后在各个条件块中加入相应的图表,看一下效果

vb实验七单选按钮、复选框、列表框和组合框实验报告

电子信息工程学系实验报告 课程名称:面向对象程序设计 实验项目名称:单选按钮、复选框、列表框和组合框 实验时间: 班级: 姓名: 学号: 一 实 验 目 的: 1) 掌握单选按钮和复选框的使用。 2) 掌握列表框的使用。 3) 掌握组合框的使用。 4) 区别几种控件的使用场合。 二 实 验 环 境: Windows XP Visual https://www.360docs.net/doc/a019050416.html, 2003 三 实 验 内 容 过 程 及 结 果 分 析: 一 复选框与列表框、组合框联动 1.创建界面 创建一个工程,由一个窗体组成,界面如下图所示,选择任意一个爱好,将自动想listbox 和combobox 中添加一个爱好。选择一个样式表,将改变combobox 的dropdownstyle 属性。 设计界面 2.设计各对象属性 可以利用属性窗口给listbox 或combobox 的items 属性添加列表项,单击items 右边的按钮,将出现字 符串集合编辑器,可以在其中预选定义列表项。

列表框和组合框的items属性设定界面 3.设计各对象的事件代码 设计checkbox的事件代码,使用户选择任意一个爱好时,向listbox和combobox中添加该爱好项,当用户不选择中某一爱好时,能移除该爱好。 Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox1.CheckedChanged If CheckBox1.Checked Then ListBox1.Items.Add(CheckBox1.Text) ComboBox1.Items.Add(CheckBox1.Text) Else ListBox1.Items.Remove(CheckBox1.Text) ComboBox1.Items.Remove(CheckBox1.Text) End If End Sub Private Sub CheckBox2_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox2.CheckedChanged If CheckBox2.Checked Then ListBox1.Items.Add(CheckBox2.Text) ComboBox1.Items.Add(CheckBox2.Text) Else ListBox1.Items.Remove(CheckBox2.Text) ComboBox1.Items.Remove(CheckBox2.Text) End If End Sub Private Sub CheckBox3_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox3.CheckedChanged If CheckBox3.Checked Then ListBox1.Items.Add(CheckBox3.Text) ComboBox1.Items.Add(CheckBox3.Text) Else ListBox1.Items.Remove(CheckBox3.Text) ComboBox1.Items.Remove(CheckBox3.Text) End If End Sub

VB教案-单选按钮与框架

可视化程序设计VB 课程教案课题单选按钮与框架授课人 课程类型一体化范围及性质 班级课时 1 上课时间上课地点 教学目标知识与技能: 1、掌握单选按钮的功能和使用方法; 2、了解复选按钮的功能; 3、知道框架的作用。 过程与方法:讲授、练习 情感态度价值观:刻苦耐劳、积极认真。 重点界面设计、单选按钮和框架的常用属性、事件和方法的使用。 难点对象属性与框架分组的操作,程序代码的理解与运用。 学情分析有一定程序设计基础,对命令按钮和标签有认识,能使用相关属性,但自学能力差。教学方法讲练结合 教学准备 教学过程与内容设计意图 教学方法 时间 (分钟) 一、引入 运行一个“按钮对比”的程序,吸入学生注意力,激发学生学习的热情。(让学生找出与以往程序相同功能的不同点) 二、新课 1、单选按钮 1)属性 (1)Value属性:用来表示单选按钮的状态,其值可以设置为True或False。(2)Alignment属性:用来设置单选按钮控件标题的位置。 (3)Style属性:用来设置单选按钮的显示方式,只能在设计时使用。2)事件 单选按钮接收Click事件,但一般不需要编写Click事件过程。 3)实例1(改变文字的颜色) (1)界面与属性设置:(1个文本框,3个单选按钮)讲练结合 观察分析 讲授、演示 启发引导 讲练结合 观察分析 自主探究 讨论合作 交流总结 5 5 12 主要属性设置:1、文本框: 字体大小:20 2、单选按钮: 字体大小:四号

(2)代码:(绿色与蓝色的代码自己完善,绿色:vbgreen; 蓝色:vbBlue ) 略...... (3)思考题: 增加一个“黑色”单选按钮,并实现相应功能。(黑色:vbblack) 2、框架 功能:使用框架是为了对控件进行分组,即把指定的控件放到框架中。 1)使用方法: A 、可以先画框架,然后在框架内画出需要成为一组的控件。 B 、如果要用框架对已有控件分组,可先选定所有需要框起的控件,将它们剪切到剪贴板,然后选定框架并将剪贴板上的控件粘贴到框架上。 2)属性 框架的属性包括Enabled 、FontBold 、FontName 、FontUnderline 、Height 、Left 、Top 、Visible 、Width 。 3)事件 框架可以响应Click 和DblClick 事件。但是,一般不需要。 4)实例2(多功能的字体设置) 单选按钮的特点是只能选一个,当需要在同一窗口中有多个选择时,就要借助框架来给它们分组。 1、界面与属性设置:(1个文本框,3个框架,10个单选按钮) 2、代码: 1)“字体颜色”的代码参考上一题。 2)“字体”的代码: ... 3)“文字大小”的代码: ... (其余两个文字大小的代码,自己完善) 3、思考题: 1)如何改变字体(属性,如何赋值)?增加一个“楷体”选项 2)单选按钮的图形方式与命令按钮有什么区别? 三、小结 1、单选按钮与框架的作用与使用方式。 2、代码的理解与综合运用。 四、作业 完成各题目后的拓展与思考(用文字描述) 分享演示 教师评价 讲授、演示 讲练结合 观察分析 自主探究 讨论合作 交流总结 分享演示 教师评价 归纳总结 3 3 12 5 教学反思 1、这4个单选按钮的Style 属性设置为:1 (图形方式) 2、根据样式设置底色与文字。

VB教案-命令按钮、选择框、单选按钮和框架

[教案] 第六课(六)命令按钮、选择框、单选按钮和框架 授课方式:讲授法 授课学时:2学时 教学目的: 通过本次课的学习,学生应该掌握使用命令按钮、选择框、单选按钮和框架四种控件常用的各种属性、事件和方法,并且能够准确使用各种控件设计各种用户界面,并能编写出响应事件的代码。 教学重点和难点: 1.命令按钮的属性和事件; 2.选择框和单选按钮的属性和事件。 教学过程: 命令按钮、选择框、单选按钮和框架 一、命令按钮(CommandButton) 1.了解命令按钮在VB中的用途。 2.掌握命令按钮的以下3个主要属性 (1)Caption(2)Style(3)Picture 3.事件 介绍命令按钮最常用的事件——Click事件的应用情况。 二、选择框(CheckBox) 1.用途 介绍选择框在VB中的用途。 2.主要属性 掌握选择框的以下4个属性: (1)Caption(2)Alignment(3)Value(4)Style 3.事件 介绍选择框最常用的事件——Click事件的具体应用情况。 三、单选按钮(OptionButton) 1.用途 介绍单选按钮在VB中的用途。 2.主要属性 掌握单选按钮的以下5个属性: (1)Caption(2)Alignment(3)Value(4)Style(5)Enabled 3.选项分组 掌握如何个单选按钮进行分组,以及那些对象可以作为分组的容器。 四、框架 (Frame) 1.用途

介绍框架在VB中的主要用途就是用于分组。 2.主要属性 掌握框架的以下3个属性: (1)Caption(2)Enabled(3)Visible 学生作业: 上机实验四:1.命令按钮、选择框和单选钮 2.单选钮和框架 [讲稿] (六)命令按钮、选择框、单选按钮和框架 一、命令按钮(CommandButton) 1、主要属性 (1)Caption:如果某个字母前加入“&”,则程序运行时标题中 的该字母带有下划线,即作为快捷键,用Alt+快捷键 (2)Style:在VB5.0 以后的版本中,命令按钮上不仅可显示文 字,还可设置显示图形。若要显示图形,首先必须在Style中设置为1,然后在Picture属性中设置显示的图形文件。在这行时Style属性是只读的 2、事件:Click事件 (3)Picture:Style=1.Picture属性可显示图形文件 C.bmp和.ico) 二、选择框(CheckBox) 1、用途:列出可供用户选项,用户根据需要选择其中的一项或多项。 2、主要属性 (1)Caption:同单选按钮 (2)Alignment:同单选按钮 (3)Value:表示复选框的状态,数值型 0~Unchecked,未被选定,默认设置 1~ Checked,被选定 2~Grayed,变成灰色,禁止用户选择 (4)Style:同单选按钮 3、事件Click 事件 三、单选按钮(OptionButton) 1、用途:给用户一组两个或更多的选择,用户在一组单选按钮中 必须并且最多只能选择一页。 单选按钮主要用在多种功能中由用户选择一种功能的情况。 2、主要属性: (1)Caption属性:设置文本注释内容,即单选按钮边一的文本 标题 (2)Alignment:设置标题和按钮显在右边,默认设置 0:控件按钮在左边,标题显示在右边,默认设置

设窗体中包含一组单选按钮,一组复选框。单选按钮包括宋体,黑体和仿宋3种字体。复选框提供对下划线,

1.1 P129-(6)原题 设窗体中包含一组单选按钮,一组复选框。单选按钮包括宋体,黑体和仿宋3种字体。复选框提供对下划线,粗体,斜体等修饰效果的选择。文本框中输入文字后单击某个按钮,文本框中的文字将按所选择的选项进行设置。窗体如图5-32所示,编写程序,实现题目的要求。 1.2 解题思路 (1)因为有一组单选按钮和一组复选框,因此需要选择框架结构来实现要求。 (2)新建一个窗体,在窗体上按照题目要求,布置各个控件,并写出其各个对象的属性表。 (3)按照题目要求,编写程序。 (4)运行程序,达到题目要求后,保存文件。 1.3 对象属性表

1.4 代码及注解 Private Sub chkbold_Click () If chkbold.Value = 1 Then '通过if语句,来使复选框选中和不选中显示不同结果txtpassage.FontBold = True Else txtpassage.FontBold = False End If End Sub Private Sub chkitalic_ Click () If chkitalic.Value = 1 Then txtpassage.FontItalic = True Else txtpassage.FontItalic = False End If End Sub Private Sub chkunderline_ Click () If chkunderline.Value = 1 Then txtpassage.FontUnderline = True Else: txtpassage.FontUnderline = False End If End Sub Private Sub cmdexit_ Click () End End Sub Private Sub Form_Load () txtpassage.Text = "Visual Basic 欢迎您" '窗体载入输入文字"Visual Basic 欢迎您" End Sub

根属性的正确概念和攻击方法

根属性的正确概念和攻击方法 (本文节选自《论证与辩论》第十三章-C,校译:吴家麟) 反方通常使用两类根属性论证:1. 现状下没有内在的障碍(inherent barrier)阻止优势的获取;2. 现状下没有内在的缺口(inherent gap)阻碍了优势的获取。记住,一旦正方的根属性非常强,那他们的解决力就有可能很弱,因为没有计划可以克服根属性。强制认可权(Fiat)可以假定立法通过(implementation),但无法保证政策可行(workability)。此外,正方使用用强制认可权来克服民众态度上的偏见,或打乱既有的政治结构,可能会导致潜在的劣势点。最后,如果正方没有很清晰地指出为什么计划没有实施,或问题产生的根源,那么他们很可能错过使得需求的弊害继续存在的真正原因。 1. 现状障碍的根属 反方试图证明,没有正当理由采纳辩题的政策,因为正方声称的优势无需通过其计划就能取得。在辩论「限制能源供应和消费」时,有些正方提出的计划是,政府强制所有发电厂使用煤炭作为唯一发电的燃料,并通过MDH方法(流体动力学过程)来发电。他们论证说,这种使用廉价而又充足的煤炭来发电的方法比现状下的发电方法要高效得多。他们宣称现状下石油作为主要燃料来发电,而石油作为一种重要资源经常面临短缺;在实行了他们的计划之后,石油就可以用到不可用煤炭来替代的其他工业上,因此这是他们政策的一个优

势。有些反方针对这类辩案就会指出,既然MDH这么好,正方并未论证为什么现状之下电力行业还没有出于自身的利益考量采用MDH方法来发电。在使用了条件式论证(conditional argument)时,反方主张由于煤炭即充足又便宜,因此倘若MDH确实更高效,那么显然用这种方法发电的企业就会获得更高的利润,大家马上都会采用这种方法,因此正方的政策计划也就失去了立法的正当性(justification)。 正方面对这种论证很难回应,除非他们找到证据证明MHD方法的启动成本高昂,因为MHD的设备非常昂贵,这是现状下为什么发电企业没有采用这一方法发电的根属障碍(inherent barrier)。成本太高导致企业要花费数年才能从这项变革中获得利润。因此,他们论证说,要获得MHD方法的好处就必须采纳辩题所提出的政策,由联邦政府强制要求发电企业采取这一方法。 2. 现状缺口的根属 在辩论「大众媒体规制」时,有些正方主张电视暴力有害并指出现状下法律存在的缺口允许了许多暴力节目的出现在电视上。反方针对这一论证指出,法律缺口与弊害缺乏关联性,因为有其他现状可以控制暴力。他们论证说电视网和电视台会对公众压力负责,并且提出了许多「由于公众反对而被电视台停播的节目」的案例来证明这一点。假设正方的需求是正当的,反方主张公众压力足以使得电视网和电视台自行调整其节目。许多反方进一步通过小幅修正现状的

单选控件(OptionButton)与复选控件(CheckBox)的Value值

1、 单选控件(OptionButton )与复选控件(CheckBox )的Value ..... 值。 1)Value 属性是单选与复选控件最主要的属性,单选与复选控件的 Value 值有差别的。 单选控件: 选中时,Value 值为True ;未被选中,Value 值为False 。 复选控件: 选中时,Value 值为1;未被选中,Value 值为0;禁止对该按钮进行选择,Value 值为2。 单选控件与复选控件的 Value 值是不同的, 2)单选与复选控件的Click 事件可以改变Value 值: 这两种控件最主要的事件是 Click 事件,当Click 事件发生,Value 值变为 True 或者 1 ,控件也自动变为选中状态 3)单选与复选控件的SetFocus 方法不一定可以改变Value 值 单选按钮SetFocus 方法可以在代码中将Value 属性设置为True (单选按钮的Visible 与Enabled 属性值均为True );复选按钮SetFocus 方法可则不可以,它仅仅可以得焦点,但不能改变选中状态。 4)编写程序代码,需要判断Value 是否改变,单选控件可以直接写代码,而复选控件需要用多分支条件语句来编写。。 例题: 在“字号”选项处,下面用了两种方法。 Private Sub OptSize_Click (Index As Integer) Select Case Index End Sub

Private Sub Check1_Click ( ) If Check1.Value = 1 Then Text1.FontBold = True Else Text1.FontBold = False End If End Sub 2、列表框(对于初学者来说,使用起来不太顺手,这里简单说明一下) 列表框控件,用于显示项目列表,用户可从中选择一个或多个项目。 1)属性 A.List:字符型数组,存放列表框的项目,下标是从0开始的。 属性窗口添加选项,输入下一项时,按“Ctrl+Enter”; 在程序中设置或引用时:列表框名.List(Index)。 例如:List1.List(0)=“北京” B.ListIndex:整数,表示执行时,选中的列表项的序号,没有项目选中时为-1 。只能在程 序中设置或引用。 例如:选择“北京”,显示在文本框中,则Text1.text=List1. List ( List1.ListIndex) C.ListCount:整数,表示项目的数量,ListCount-1是最后一项的下标。只能在程序中设置 或引用。 D.Selected 属性,该属性返回或设置列表框控件中的一个项目的选择状态,逻辑型,只能 在程序中设置或引用。 例如:List1.Selected(0)=True E.Text:被选中的列表项的文本内容,只能在程序中设置或引用。 List1. List ( List1.ListIndex)=List1.Text 2)方法举例说明: List1.AddItem “沈阳”,4 ‘在第4项后插入“沈阳” List1.AddItem “沈阳”‘在最后出入“沈阳” List1.RemoveItem 4 ‘删除第5项内容 List1.Clear ‘删除所有项目 3)Click,DblClick事件 Click事件,自动改变列表框ListIndex、Selected、Text等属性,无需另行编写代码。 3、组合框:一种同时具有文本框和列表框特性的控件。可以选择项目,也可以输入项目。 Style属性,用以确定组合框的形式。设置值可为0,1或2,决定组合框的三种形式。 Style = 0时,可以编辑项目,响应Click,Change和Dropdown事件; Style = 1时,可以编辑项目,响应Click,DblClick和Change事件; Style = 2时,不.可以编辑项目响应Click 和Dropdown事件。 说明:Change事件:文本框内容改变时触发。 DropDown事件:单击下拉箭头时触发。

Axure部件详解 Radio Button 单选按钮

原型库网站—讲师金乌原创发布,可自由转载,请注明出处! 《AxureRP7.0部件详解》 Radio Button 单选按钮 常见案例 在表单中 单选按钮经常用于从一个小组的选择切换到另一组。 该选择可以触发该页面上的交互或被存储的变量值跨页交互。 编辑单选按钮

单选按钮组 当单选按钮添加到组中后,一次只能有一个被设置为选中状态。 选择你想要加入到组中的单选按钮,然后右键 -- 指定单选按钮组,或者在部件属性面板中设置单选按钮组名称。 如果你想添加多余的单选按钮到组中,右键点击 -- 指定单选按钮组,在弹出的对话框中选择对应的单选按钮组名称。 要将单选按钮从组中移出,右键点击 -- 指定单选按钮组,将群组名称清空,点击确定。本帖分享可见的内容 单选按钮组案例 预览效果

对齐方式 对齐方式默认情况下,单选按钮是在左侧,文字在右侧。你可以通过部件属性面板,调整左右位置。 禁用单选按钮 默认情况下单选按钮是启用的,但有些情况需要禁用单选按钮。禁用单选按钮可右键点击选择禁用或者在部件属性面板中选择禁用。

设置默认选中或动态选中 单选按钮可以在设计区域点击设置为默认选中,或者右键单击勾选选中。这样生成原型单选按钮默认是选中的。 单选按钮也可以通过设置选择/选中动作动态设置其选中状态。 常用交互 点击禁用/启用文本 单选按钮可以添加鼠标单击事件。 因为单选按钮在单选按钮组中自动切换,所以你不需要添加一个以上的用例或向复选框那样的逻辑判断。 点击按钮启用文本部件

预览效果 动态切换选中状态 单选按钮可以使用设置选择/选中动作动态切换其选中状态。 这个案例中包含了如何动态切换单选按钮选中状态。 案例下载 效果预览 基于单选按钮选择显示内容 设置单选按钮可以使用条件动态控制动态面板的显示状态。 如果选中值状态“单选按钮” 的值 = 真,这个条件的判断后会执行一个设置动态面板状态的动作。

练习05Java类属性方法定义练习题

第4讲Java类,属性和方法定义[] 选择题 1. 问:下列哪些是合法的类定义语句 A.private class A {} B.public class A () C.class A extends Exception, IOException {} D.public class 1A extends Object {} E:public class String {} F:以上都不是 答: 2. 问:下列哪些不是合法的类定义 A:protected class Object {} B:public class Object extends Object {} C:public class Object extends https://www.360docs.net/doc/a019050416.html,ng.Object {} D:class $$$$$$ {} E:class Final {} F:以上都是合法的类定义 G:以上都不是合法的类定义 答: 3.下列定义哪个合法: A:public class UserString implements String {} B:public class final UserDao extends Object {} C:public class UserBusiness { private abstract void addUser(String userId, int age); } D:public class abstract EmployeeInfo implements Object {} E:package com.neusoft.oa.dao; public class Object {} F:以上定义都不是。 答: 4.类的访问控制符有: A:public B:friend C:private D:protected E:以上都不是 答:

选择题

1.当运行程序时,系统自动启动窗体的______d____事件过程 D、Load 2.文本框没有______a____属性 A、Caption 3.在一行语句内写多条语句时,每个语句之间用_____b_____符号分隔 B、: 4.若要求从文本框中输入密码时在文本框中只显示*号,则应当在此文本框的属性窗口中设置__c___。 C、Passwordchar属性值为* 5.若要命令按钮具有图形特性可通过_____a_____属性来进行。 A、Style 6.下面______d____是合法变量名 D、X_yz 7.能够将文本框控件隐藏起来的属性是__b___。 B、Visible 8.下面程序段运行后,dim x:if x then print x else print x+1 。显示的结果是_____a_____ A、1 9.表达式 Len("VB程序设计ABC")的值是___d______。 D、 9 10.在VB中,对于已经声明但没有赋值的布尔型变量,系统的默认值是_____c______。 C、False 11.按变量名的定义规则,下面_____a_____是错误定义的变量名。 A、Single 12.a + b 小于10,且a - b 大于 1 的逻辑表达式是____c_____。 C、a + b < 10 And a - b > 1 13.若要处理一个值为50000的整数,应采用哪种VB基本数据类型描述更合适?____b______ B、Long 14..下面正确的赋值语句是_____c_____

C、y=x+30 15.rnd函数不可能为下列_____d_____值 D、1 16.下面语句执行后,变量w的值为_____d______。w=Choose(2,"Red","Green","Blue","Yellow" ) D、"Green" 17.下列程序段表示求两个数中的大数,_____d____不正确。 D、If y>=x Then Max=y Max =x 18.下面语句正确的是____a____。 A、If x<>y then print "x不等于y " 19.在VB集成环境中,调试程序可以设置跟踪点。如果设置了跟踪点,那么当程序运行至该跟踪点时,会出现一条黄色__C__ C、上一句语句 20.对于选择结构语句 If x = 10 Then y = 100 ,下列说法正确的是___B______。 B、 x=10 为关系表达式, y=100 为赋值语句 21.有程序代码Text1.text="Text1.text" 则Text1、text与"Text1.text"分别代表_____d_____ D、对象、属性、值 22.在使用 MsgBox时,必须设置的参数是_____d________。 D、提示 23.结构化程序有三种基本结构组成,下面术语中是三种基本结构之一的是___b_____。 B、选择结构 25.下列语句正确的是____d____。 D、 If x<3*y And x>y Then y=x^3 26.语句If x=1 Then y=1,下列说法正确的是______a______。 A、x=1为关系表达式,y=1为赋值语句 27.下列一维数组说明语句错误的是____c_____。 C、Dim b(-10To -20) AS Integer 28.数组声明语句Dim a(4,-1 To 2, 3)中的数组a包含了_____c____个数组元素。 C、 80

java定义类、属性、方法和构造器

java定义类、属性、方法和构造器 Java是面向对象的程序设计语言,Java语言提供了定义类、定义属性、方法等最基本的功能。类可被认为是一种自定义的数据类型,可以使用类来定义变量,所有使用类定义的变量都是引用变量,它们将会引用到类的对象,对象由类负责创建。类用于描述客观世界里某一类对象的共同特征,而对象则是类的具体存在,Java程序使用类的构造器来创建该类的对象。 Java也支持面向对象的三大特征:封装、继承和多态,Java提供了private、protected和public三个访问控制修饰符来实现良好的封装,提供了extends关键字来让子类继承父类,子类继承父类将可以继承到父类的属性和方法,如果访问控制允许,子类实例可以直接调用父类里定义的方法。继承是实现类复用的重要手段,除此之外,也可通过组合关系来实现这种复用,从某种程度上来看,继承和组合具有相同的功能。使用继承关系来实现复用时,子类对象可以直接赋给父类变量,这个变量具有多态性,编程更加灵活,而利用组合关系来实现复用的时候,则不具备这种灵活性。 构造器用于对类实例进行初始化操作,构造器支持重载,如果多个重载的构造器里包含了相同的初始化代码,则可以把这些初始化代码放置在普通初始化块里完成,初始化块总在构造器执行之前被调用。除此之外,Java还提供了一种静态初始化块,静态初始化块用于初始化类,在类初始化阶段被执行。如果继承树里的某一个类需要被初始化时,系统将会同时初始化这棵继承树里的所有类。 类和对象 Java是面向对象的程序设计语言,类是面向对象的重要内容,我们可以把类当成一种自定义数据类型,可以使用类来定义变量,这种类型的变量统称为引用型变量。也就是说,所有类是引用数据类型。 定义类 面向对象的程序设计过程中有两个重要概念:类(class)和对象(object,也被称为实例,instance),其中类是某一批对象的抽象,可以把类理解成某种概念;对象才是一个具体存在的实体,从这个意义上来看,我们日常所说的人,其实应该是人的对象,而不是人类。 Java语言是面向对象的程序设计语言,类和对象是面向对象的核心。Java语言提供了对创建类和创建对象简单的语法支持。 Java语言里定义类的简单语法如下: [修饰符]class类名 { 零个到多个构造器定义.. 零个到多个属性… 零个到多个方法… }

jquery取radio单选按钮的值

https://www.360docs.net/doc/a019050416.html,/code/snippet_179497_6635 $("input[name='items']:checked").val(); 004另:判断radio是否选中并取得选中的值 005 006如下所示: 007function checkradio(){ 008var item = $(":radio:checked"); 009var len=item.length; 010if(len>0){ 011 alert("yes--选中的值为:"+$(":radio:checked").val()); 012} 013} 014 015 016 017 018 jquery radio取值,checkbox取值,select取值,radio选中,checkbox 选中,select选中,及其相关 019 020获取一组radio被选中项的值 021 022 var item = $('input[name=items][checked]').val(); 023 024获取select被选中项的文本 025 026 var item = $("select[name=items] option[selected]").text(); 027 028 select下拉框的第二个元素为当前选中值 029 030 $('#select_id')[0].selectedIndex = 1; 031 032 radio单选组的第二个元素为当前选中值 033 034 $('input[name=items]').get(1).checked = true; 035

类、属性、方法的格式

案例: 定义一个“富婆类”,属性name 、money。行为一(无参数无返回):跑步喝水;行为二(无参数有返回值):收快递;行为三(有参数有返回):买烟smoke;行为四(有参数无返回):施舍money 施舍apple。 定义富婆类: Public class 富婆类{ //定义属性 String name; int money; /*方法类型一:无参数无返回。 格式: public void 方法名(){ //方法体 }*/ Public void 跑步(){ System.out.println(name+”在跑步”); } /*方法类型二:无参数有返回。 格式: Public 返回值类型方法名(){ //方法体 return 值;//return值类型必须和返回值类型相同 } public String 收快递(){ String str=”德玛西亚皮肤”; return str; //打印对象的信息:方法名和返回值不能改 /*每一类都有一个打印对象的信息的方法返回值类型一定是String ,方法名一定是toString,不能修改。*/ public String toString(){ return “自我介绍”+name+money; } /*方法类型三:有参数有返回。 格式: public 返回值类型方法名(参数1,参数2,参数3,……){//参数可以有多个,中间用,隔开。 //方法体 return值 }

public String 买烟(int money){ String smoke; if(money>=25){ smoke = "芙蓉王"; }else{ smoke = "相思鸟"; } return smoke; } /*方法类型四:有参数无返回。 格式: public 返回值类型方法名(参数1,参数2,参数3,……){ //方法体} } public String 施舍(Sring apple,int mone){ System.out.println(name+”施舍给别人”+apple+”和”+money+”元钱”); } } 测试类: public class Test1{ public static void main(String[] args){ 富婆类fp=new 富婆类(); https://www.360docs.net/doc/a019050416.html,=”芙蓉姐姐”; fp.money=100*100*100; //输出类的所有属性的属性值:自我介绍 //方法一: //System.out.println("自我介绍"+https://www.360docs.net/doc/a019050416.html,+"\t"+fb.money); //方法二:toString方法(必须配合使用自定义类中的public String toString()System.out.println(fb.toString());【也可以这样写:System.out.println(fp );//词句话会自动调用toString()方法】。 //(方法类型一的调用)调用无参数无返回值的方法 fp.喝水(); //(方法类型二的调用)调用无参数有返回值的方法☆必须接受返回值才能输出返回的东西 /*String s = fb.收快递(); System.out.println(s); 输出数据等价于下面一句话:*/ System.out.println(fp.收快递());//配合自定义类中的return使用

Java图形界面程序单选按钮、复选框、文本框、标签程序设计举例

实验十一:Java的图形界面程序单选按钮、复选框、文本框、标签 一、实验目的 熟练地掌握Java的图形界面程序单选按钮、复选框、文本框、标签、列表框的编程。通过实验掌握编写程序的思想方法,体会编程的技巧,加深Java语言的应用能力。 二、实验环境 硬件环境:微型计算机。 软件环境:Windows 2000或以上版本,JKD, Jcreator 三、实验内容与要求 用Java语言编程实现以下问题: 1、编写程序,布局如word图,框架的大小自动调整f.pack() 事件的种类是Item,当选中一个复选框时,在最底下的文本框会出现合计的总价款 程序: import java.awt.*; import javax.swing.*; import java.awt.event.*; import javax.swing.border.*; public class supermarket implements ItemListener { JFrame f;

JPanel p; JTextField t; JCheckBox c1,c2,c3; int sum=0; public static void main(String args[]) { supermarket s=new supermarket(); s.go(); } void go() { f=new JFrame("超市"); p=new JPanel(); t=new JTextField(); c1=new JCheckBox("苹果5元"); c2=new JCheckBox("橘子2元"); c3=new JCheckBox("梨3元"); f.add(p,BorderLayout.CENTER); f.add(t,BorderLayout.SOUTH); p.add(c1); p.add(c2); p.add(c3); p.setLayout(new BoxLayout(p,BoxLayout.Y_AXIS)); Border etched=BorderFactory.createEtchedBorder(); Border border=BorderFactory.createTitledBorder(etched,"超市"); p.setBorder(border); f.setSize(500,500); f.setVisible(true); c1.addItemListener(this); c2.addItemListener(this); c3.addItemListener(this); } public void itemStateChanged(ItemEvent e) { if(e.getSource()==c1) { if(c1.isSelected()) sum=sum+5; else sum=sum-5 t.setText("总计为"+sum+"元"); } if(e.getSource()==c2) { if(c2.isSelected()) sum=sum+2; else

类、对象、方法、变量、属性定义

类、对象、变量、方法及属性 (2007-05-22 00:15:34) 转载▼ 类:类是组成java程序的基本要素。类封装了一类对象的属性和方法。类是用来定义产生对象的模板。类的实现包括两部分:类声明和类体。 类体分为两部分:成员变量和局部变量。 1、成员变量和局部变更的类型可以是java中的任何一种数据类型.变量定义部分所定义的变更被称为类的成员变量,在方法体中定义的变量和方法的参数被称为局部变量。 2、成员变量在整个类内都有效,局部变量只在定义它的方法内有效。 3、成员变量又分为实例成员变量(实例变量)和类变量(静态变量)。、 4、如果局部变量的名字和成员变量的名字相同,则成员变量被隐藏,即这个成员变量在这个方法内暂时失效。 5、如果局部变量的名字和成员变量的名字相同,则成员变量被隐藏。这时如果想在该方法内使用成员变量,必须使用关键字this. 方法:一个类的类体由两部分组成:变量的定义和方法的定义。方法定义包括两部分:方法声明和方法体。例如:一个汽车的加速、减速、转弯、制动这些都是 该对象的方法。 方法重载:一个类中可以有多个方法具有相同的名字,但这些方法的参数必须不同,即或者参数个数不同,或者参数的类型不同。 构造方法:是一种特殊方法,它的名字必须与它所在的类的名字完全相同,而且没有类型,构造方法也可以重载。 类方法和实例方法 成员变量可分实例变量和类变量。类中的方法也分为实例方法和类方法。 1、对成员变量的操作只能放在方法中,方法可以对成员变量和方法体中自己定义的局部变量进行操作。 2、实例方法既能对类变量操作也能对实例变量操作,而类方法只能对类变量进行操作。 3、一个类中的方法可以互相调用,实例方法可以调用该类中的其他方法;类中的类方法只能调用该类的方法,不能调用实例方法。 对象:类是创建对象的模板。当使用一个类创建了一个对象时,也就是说给出了这个类的一个实例。“对象”其实我们并不陌生,天天都在和我们打交道,我们写字用的笔,骑的“宝马”等,太多了,世界万物,一切皆时对象! 属性:就是一个对象自用拥有的特性。例如:一辆汽车的颜色、重量、轮子数目、运行速度等这些都是该对象自身的属性。 好了,了解了概念还不行。还得自己再动手多写写代码。要学习java编程就必须学会怎样去编写类,怎么用java的语法去描述一类事物共有的属性和功能。属性通过变量来刻画,功能通过方法来体现,即方法操纵属性形成一定的算法来实现一个具体的功能。类把数据和对数据操作封装成一个整体。

类、字段、方法、属性之间的定义及部分区别

类、字段、方法、属性之间的定义及部分区别 1、在c#中。类是主要的类型。类声明定义新的引用类型。一个类可以从另一个类继承。并且可以实现接口。类成员可以包括常数、字段、方法、属性、事件、索引器、运算符、实例构造函数、析构函数、静态构造函数和嵌套类型声明。每个成员都有关联的可访问性。它控制能够访问该成员的程序文本区域。有五种可能的可访问形式。 (1)public。不限制访问。 (2)protected。尽在同一个类内。或该类的派生类中访问。 (3)Internal。仅从同一个项目内访问。 (4)protected internal。访问限于同一个项目或派生类。 (5)Private。访问限于本类。 2、字段。是表示与对象或类关联的变量的成员。例子如下—— class Color { internal ushort redPart; internal ushort bluePart; internal ushort greenPart; public Color(ushort red,ushort blue,ushort green) { redPart=red; bluePart=blue; greenPart=green; } .... } 此例显示了一个Color类,该类具有名为redPart、bluePart、greenPart的内部实例字段。 3、方法。方法是实现可以由对象或类执行的计算或操作的成员。方法有一个形参表(可能为空)、一个返回值(若返回值类型为void则没有)。并且方法可以是静态的或是非静态的。通过类访问静态方法。通过类的实例访问实例方法。 下面代码定义了一个Stack类。该类具有若干静态方法(Clone和Flip)和若干实例方法(Push、Pop和ToString)。 public class Stack { public static Stack Clone(Stack s) {...} public static Stack Flip(Stack s) {...} public object Pop() {...} public void Push(object o) {..} public override string ToString() {...} ... } class Test

相关文档
最新文档