文档章节

使用 IntraWeb (21) - 基本控件之 TIWTabControl

涂孟超
 涂孟超
发布于 2014/09/26 15:34
字数 466
阅读 17
收藏 0

TIWTabControl 包含的是 TIWTabPage; 设计时通过右键菜单 Add Page 添加(再给页面添加东西时一定要先选定页面); 下面例子是动态添加的.

TIWTabControl 所在单元及继承链:
IWCompTabControl.TIWTabControl < TIWCustomRegion < TIWHTML40Container < TIWHTMLContainer < TIWContainer < TIWBaseContainer < TScrollingWinControl < TWinControl < TControl < TComponent < TPersistent < TObject

主要成员:
property Pages: TList //TIWTabPage 对象的集合; 但它是 TList 类型, 使用前需转换下
property ActiveTabFont: TIWFont     //当前 Tab 标签的字体
property ActiveTabColor: TIWColor   //当前 Tab 标签的背景色
property InactiveTabFont: TIWFont   //其他 Tab 标签的字体
property InactiveTabColor: TIWColor //其他 Tab 标签的背景色
property ActivePage: Integer //当前页号; 如果需要设置它将导致提交, 官方给出了通过 js 进行本地设置的方法: IWTABCONTROL1.tabPane.setSelectedIndex(i);
property BorderOptions: TIWContainerBorderOptions //它的边框选项还是比较复杂的, 个人觉得: 如果需要边框还不如套个 TIWRegion
property LayoutMgr: TIWContainerLayout  //布局管理器, 它也可以用模板(它是从 TIWCustomRegion 继承的)
property Color: TIWColor  //

property OnChange: TNotifyEvent       //
property OnAsyncChange: TIWAsyncEvent //

procedure Submit(const AValue: string)   //
procedure pageAdded(APage: TIWTabPage)   //
procedure pageRemoved(APage: TIWTabPage) //
function CreateNewPage(const APageTitle: string; const APageName: string): TIWTabPage //


TIWTabPage:
{IWCompTabControl.TIWTabPage < TIWCustomRegion < TIWHTML40Container < TIWHTMLContainer < TIWContainer < TIWBaseContainer < TScrollingWinControl < TWinControl < TControl < TComponent < TPersistent < TObject}

property Title: string   //
property Color: TIWColor //
property BorderOptions: TIWContainerBorderOptions //

procedure Invalidate  //


测试:

{先在空白窗体上放 1 个 TIWTabControl, 3 个 TIWTabPage, 2 个 TIWButton}
procedure TIWForm1.IWAppFormCreate(Sender: TObject);
var
  fPage1, fPage2, fPage3: TIWTabPage;
begin
  //动态建立 3 个 TIWTabPage
  fPage1 := IWTabControl1.CreateNewPage(' Page1 ');
  fPage2 := IWTabControl1.CreateNewPage(' Page2 ');
  fPage3 := IWTabControl1.CreateNewPage(' Page3 ');

  //让 IWButton1 具备切换标签的功能
  JavaScript.Add('var i = 0;'); //js 全局变量
  IWButton1.ScriptEvents.HookEvent('onclick', 'i++; i%=3; IWTABCONTROL1.tabPane.setSelectedIndex(i);'); //IWTABCONTROL1 或换成 IWTABCONTROL1IWCL

  IWTabControl1.Color := $efefef;
  IWTabControl1.InactiveTabColor := $efefef;
  IWTabControl1.ActiveTabColor := $0000ff;

  IWGrid1.Parent := fPage1;
  IWGrid2.Parent := fPage2;
  IWGrid3.Parent := fPage3;

  IWGrid1.RowCount := 3;
  IWGrid1.ColumnCount := 4;
  IWGrid1.BGColor := $ffeeee;
  IWGrid1.CellPadding :=4;
  IWGrid1.Align := alTop;

  IWGrid2.RowCount := 4;
  IWGrid2.ColumnCount := 5;
  IWGrid2.BGColor := $eeeeff;
  IWGrid2.CellPadding := 4;
  IWGrid2.Align := alTop;

  IWGrid3.RowCount := 5;
  IWGrid3.ColumnCount := 6;
  IWGrid3.BGColor := $eeffee;
  IWGrid3.CellPadding := 4;
  IWGrid3.Align := alTop;
end;

{测试 Pages 属性}
procedure TIWForm1.IWButton2Click(Sender: TObject);
begin
  WebApplication.ShowMessage(TIWTabPage(IWTabControl1.Pages[0]).Title); // Page1
end;


效果图:


本文转载自:http://www.cnblogs.com/del/p/3793016.html

共有 人打赏支持
涂孟超
粉丝 12
博文 2011
码字总数 14107
作品 0
深圳
程序员
私信 提问
界面控件包TMS IntraWeb Component Pack Pro Script Edition发布v5.8.8.1

TMS IntraWeb Component Pack Pro Script Edition允许从Delphi IDE直接在IntraWeb表格上编辑设计期间的网页。IntraWeb的TMS控件允许以RAD方法用Delphi进行网页应用程序的开发。这使得网页开发...

Harriet666
2017/10/20
0
0
使用delphi 开发 web(一) webbroke 简介

从delphi 3 开始,就可以支持使用webbroke 技术开发基于web 服务器。当时主要是支持CGI和ISAPI. CGI 其实就是一个类似控制台的可执行程序,将其放入web 服务器的可执行目录,每次web 服务器调...

xalion
2012/01/04
0
0
《Silverlight 2完美征程》:书稿目录

内容简介 本书详细介绍了微软下一代富互联网开发技术Silverlight,分为基础篇、进阶篇、高级篇和案例篇四个部分,共22个章节,以Silverlight 2为主要版本从不同的层面进行了阐释,第一部分介...

lihuijun
2009/04/24
0
0
VB.NET与VB6.0区别初认识

VB.NET看完曹祖圣老师的视频,一口的台湾话,连PPT都不是简体中文的,听起来颇有意思。(.NET说是当内,第一次还想什么是当内呢。哈哈)不过话又说回来,这套视频和平常的视频不太一样,好像是...

晨曦之光
2012/04/24
496
0
MD 风格的文本框--MaterialEditText

MaterialEditText,是一个遵循 Material Design 风格的文本输入框。 随着 Material Design 的到来, AppCompat v21 中也提供了 Material Design 的控件外观支持,其中包括 EditText 。但 Ap...

扔物线
2016/11/09
4.6K
0

没有更多内容

加载失败,请刷新页面

加载更多

nuc970 uboot nand-boot,kernel, filesystem 烧录位置

一 烧写到Nand Flash **1.1 **相关文件说明 l BSP版本:nuc970bsp-release-20150519.zip l NuWriter版本:2015/04/28-V01,nuvoTon Nu-Writer V1.0 l 烧写文件: u-boot-spl.bin:负责将u-b......

CookieDemo
今天
1
0
python中sort和sorted函数小结

L.sort(cmp=None, key=None, reverse=False) sorted(iterable, cmp=None, key=None, reverse=False) 这样看,sorted函数只比sort函数多一个iterable参数,其余没什么不同,iterable是一个迭代......

上官夏洛特
今天
3
0
thinkphp 常用SQL执行语句总结

第一条:Db::tablera('vr_panomas')->where(['delete_time'=>0,'id'=>['in',$pids]])->field(['id'=>'id','post_thumb'=>'thumb','post_title'=>'title','post_tags'=>'tags','post_price'=>......

koothon
今天
5
0
支付宝返回状态resultStatus意思

上一篇集成支付宝的时候,会有一些支付宝返回的resultStatus,具体意思是: 9000 订单支付成功 8000 正在处理中 4000 订单支付失败 6001 用户中途取消 6002 网络连接出错 还有memo,意思就是...

RainOrz
今天
3
0
electron webview 页面加载事件顺序

1.did-start-loading 页面开始加载 2.load-commit 主页面文档加载 3.page-title-updated title 4.dom-ready 主页面 dom 加载完成 5.load-commit frame文档加载 6.did-frame-finish-load fram......

dubox
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部