①设置列表视图显示方式
Ⅰ CListCtrl有四种样式:LVS_ICON、LVS_SMALLICON、LVS_LIST、LSV_REPORT,可通过控件属性来设置。本文所述均为LSV_REPORT属性。
Ⅱ 扩展样式:
常用的扩展样式有三种:LVS_EX_FULLROWSELECT、LVS_EX_GRIDLINES、LVS_EX_CHECKBOXES,分别对应作用 选中某行时使正行高亮、设置网格线、item前生成Ckeckbox控件。
使用SetExtendedStyle(style)函数设置扩展样式,使用GetExtendedStyle()函数获取样式,如:
m_listInfoSetExtendedStyle(LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES);
Ⅲ 使用CListView时,需要在PreCreateWindow()函数中添加 csstyle | = LVS_REPORT;
来将其设置为LVS_REPORT风格,否则插入无效。还用另一种方法来设置风格,即在OnInitialUpate()中获取CListCtrl控制权,然后修改风格,如下所示:
CListCtrl &theCtrl =GetListCtrl();
theCtrlModifyStyle(0, LVS_REPORT);
②插入 *** 作
先插入列:
int InsertColumn( int nCol, LPCTSTR lpszColumnHeading, int nFormat, int nWidth, int nSubItem)
插入列时,可指明列号、列名称、列名称显示样式,列宽等信息。对于列号为0的那一列,始终是靠左显示,后面会有修改使其剧中显示的方法,其他列通过设置nFormat属性可以居中显示。
插入行:
int InsertItem( int nItem, LPCTSTRlpszItem )
直接插入一行,nItem指明行号,lpszItem指明该行第0列的信息。
设置信息:
BOOL SetItemText(int nItem, int nSubItem, LPCTSTR lpszText )
设置第nItem行nSubItem列的信息(nItem:0,1,2,3……; nSubItem:1,2,3……)
③删除 *** 作
有三个 *** 作函数:
BOOL DeleteAllItems() -------删除所有的行
BOOL DeleteItem(nItem) --------删除某一行
BOOL DeleteColumn(nCol) -----删除某一列
④获取/设置属性函数
有很多函数了,就不一一介绍了。常用的有
int GetItemCount() -------- 获取已插入信息的行数
BOOL SetItemState(int iLink, UINTstate, UINTstateMask ) ---------设置行状态,如高亮显示等
CSS的样式分为三类:
内嵌样式:是写在Tag里面的,内嵌样式只对所有的Tag有效。
内部样式:是写在HTML的里面的,内部样式只对所在的网页有效。
外部样式表:如果很多网页需要用到同样的样式(Styles),将样式(Styles)写在一个以css为后缀的CSS文件里,然后在每个需要用到这 些样式(Styles)的网页里引用这个CSS文件。
getComputedStyle是一个可以获取当前元素所有最终使用的CSS属性值。返回的是一个CSS样式对象([object CSSStyleDeclaration])
currentStyle是IE浏览器的一个属性,返回的是CSS样式对象
element指JS获取的DOM对象
elementstyle //只能获取内嵌样式
elementcurrentStyle //IE浏览器获取非内嵌样式
windowgetComputedStyle(element,伪类) //非IE浏览器获取非内嵌样式
documentdefaultViewgetComputedStyle(element,伪类)//非IE浏览器获取非内嵌样式
注:Gecko 20 (Firefox 4 / Thunderbird 33 / SeaMonkey 21) 之前,第二个参数“伪类”是必需的(如果不是伪类,设置为null),现在可以省略这个参数。
下面的html中包含两种css样式,id为tag的div是内嵌样式,而id为test的div样式为内部样式
<!doctype html><html lang="en">
<head>
<meta charset="UTF-8">
<meta name="Generator" content="EditPlus®">
<meta name="Author" content="Yvette Lau">
<meta name="Keywords" content="关键字">
<meta name="Description" content="描述">
<title>Document</title>
<style>
#test{
width:500px;
height:300px;
background-color:#CCC;
float:left;
}
</style>
</head>
<body>
<div id = "test"></div>
<div id = "tag" style = "width:500px; height:300px;background-color:pink;"></div>
</body>
</html><script type = "text/javascript">
windowonload = function(){
var test = documentgetElementById("test");
var tag = documentgetElementById("tag");
//CSS样式对象:CSS2Properties{},CSSStyleDeclaration
consolelog(teststyle); //火狐返回空对象CSS2Properties{},谷歌返回空对象CSSStyleDeclaration{}
consolelog(tagstyle); //返回CSS2Properties{width:"500px",height:"300px",background-color:"pink"}
//elementstyle获取的是内嵌式的style,如果不是内嵌式,则是一个空对象
consolelog(tagstylebackgroundColor);//pink
consolelog(tagstyle['background-color']);//pink
//获取类似background-color,border-radius,padding-left类似样式的两种写法啊
consolelog(testcurrentStyle) //火狐和谷歌为Undefined,IE返回CSS对象
consolelog(windowgetComputedStyle(test,null))//谷歌返回CSSStyleDeclaration{……} ,火狐返回CSS2Properties{……}
consolelog(windowgetComputedStyle(test))
//效果同上,但是在Gecko 20 (Firefox 4/Thunderbird 33/SeaMonkey 21) 之前,第二个参数“伪类”是必需的(如果不是伪类,设置为null)
consolelog(testcurrentStylewidth);//500px(IE)
consolelog(windowgetComputedStyle(test)width); //500px;
consolelog(windowgetComputedStyle(test)['width']);//500px;
//documentdefaultViewgetComputedStyle(element,null)[attr]/windowgetComputedStyle(element,null)[attr]
}
</script>
①objoffsetLeft:只读。指对象obj的左边框border-left(不包含border-left的大小)到定位的父级元素的左填充padding-left(包含padding-left的大小)的距离,当没有定位的父级时,则相对于body。读取的是数值,没有单位
②objstyleleft:通过style属性,只能读取标签中style属性中的样式,不能读取外部CSS或内部的非行间样式,所以通常是不用它来读取样式的,而是设置样式。说回来,objstyleleft用于设置绝对定位的对象obj的左外边距margin-left(不包含margin-left的大小)到定位的父级元素的左填充padding-left(包含padding-left的大小)的距离,当没有定位的父级时,则相对于body。赋值时需要加单位
③这里的定位的父级元素指:包含对象obj 并设置了position为relative、absolute、fixed的元素。
④关于题主中的“没反应”:首先你左边的offsetLeft是数值,右边加了‘px’后是字符串,类型错误,所以没反应
⑤这里有个IE8的Bug:IE8中的offset系列是包括定位父级的border的。
function getStyle(obj,attr){
if(objcurrentStyle){
return objcurrentStyle[attr]
}
else{
return getComputedStyle(obj,false)[attr]
}
}
好吧 我开始看错了。我以为你要获取兼容样式。这个函数是获取对象属性的值,返回NAN说明对象的属性不是数字值
在函数中出现 变量声明的时候 会将变量放到 当前函数 开始的位置
(1) getComputedStyle 获取元素的样式
不受限制 不管是不是行间样式 都能获取到
仅在IE中使用
(2) offsetWidth; 算边框
获取 元素的 宽度
元素在水平方向上占用的空间的大小
元素宽度+padding-left+padding-right+border-left+border-right
(3) offsetHeight 获取 元素 高度
元素在垂直方向上占用的空间的大小
元素高度+padding-top+padding-bottom+border-top+border-bottom
(4) offsetLeft 元素左外边框至父级元素的左内边框之间的像素距离
(5) offsetTop:元素左上内框至父级元素的上外边框之间的像素距离
(6) clientWidth 不算边框 里面的内容区域
content + padding
元素的 边框内的区域
元素内容区宽度加上左右内边距的宽度 不算边框 里面的内容区域
(7) clientHeight:元素内容区高度加上上下内边距的宽度
(8) styleleft:通过styleleft获取css样式获取的是行间样式
(9) getAttribute 获取 自定义下标
(10)setAttribute 设置 自定义下标
1根据浏览器宽度 以及 每一列的固定宽度 计算 需要多少列
2循环生成每一个元素 将他添加到 父级元素中
3第一行添加完之后 用 数组 将每一列的高度 储存起来
4从第二行开始 每次添加 新的元素时 判断 那一列高度来最小 将新的元素添加到最小高度那一列
5当滚动条接近于底部时时候 加载新的数据
里面的值 是通过 键值对 的形式储存
key value
key 一般情况下 都使用 字符串 的形式;
以上就是关于TI公司提供的开发包中InitSysCtrl()函数的作用全部的内容,包括:TI公司提供的开发包中InitSysCtrl()函数的作用、急!怎么用js提取出span标签内style里的属性值、javascript 关于样式的小问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)