本文以 预览本机字体 来演示aardio的HTMLayout列表控件动态添加列表项。
<widget>标签支持 height:100%%; 这种两个百分号的写法,<select>标签不支持。
动态设置元素字体的时候字体名字要用两个’\“‘双引号把字体名字括起来,不然不会生效。如下
ele.style["font-family"]='\"'+fullname+'\"';
   | 
 
使用Htmlayout做界面是很不错的选择!! ^_^
源代码如下:
import win.ui; import win.font; /*DSG{{*/ var winform = win.form(text="HTMLayout列表框 - aardio编程学习";right=599;bottom=399;maxmize=1;parent=...) winform.add() /*}}*/
  import web.layout; wbLayout = web.layout( winform )
  wbLayout.html = /** <html>     <body>         <widget type="select" id="fontlist">                  </widget>     </body> </html> **/
  wbLayout.css = /** widget#fontlist {     width:100%%;     height:100%%; } widget#fontlist option{     height:30px;     font-size:25px;     margin:2px 0px;     border:1px dotted green; } **/
  //枚举本机包含GB2312的字体 win.font.enum(      function(logfont,fullname,ftype,style,script,lpntme){         if( ftype == 0x4/*_TRUETYPE_FONTTYPE*/ && fullname[1] != '@'#/*翻转90度字体*/ ){                      //创建一个option元素             var ele = wbLayout.createEle("option","字体名称:"++fullname++"  学习aardio编程语言!123456789  www.aardio.com");             //将创建的元素ele追加到id="fontlist"的widget元素中             wbLayout.getEle("fontlist").append(ele);             //设置新建的option元素的字体             ele.style["font-family"]='\"'+fullname+'\"';                      }     },{ charset = 0x86/*_GB2312_CHARSET*/; name = "" } )
  winform.show()  win.loopMessage();
   |