文档章节

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

涂孟超
 涂孟超
发布于 2014/09/26 15:34
字数 466
阅读 21
收藏 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
76
0
使用delphi 开发 web(一) webbroke 简介

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

xalion
2012/01/04
0
0
解决Caused by: java.sql.SQLRecoverableException: IO Error: Connection reset相关问题

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/majian_1987/article/details/18598589 java.sql.SQLException: Io 异常: Connection reset 当数据库连接池中...

大饼卷馒头蘸米饭
2014/01/21
0
0
《Silverlight 2完美征程》:书稿目录

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

lihuijun
2009/04/24
0
0
MD 风格的文本框--MaterialEditText

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

扔物线
2016/11/09
6.2K
0

没有更多内容

加载失败,请刷新页面

加载更多

VMware vSphere ESXi主机的访问控制

在vShpere中,访问ESXi主机的途径很多,如下: ESXi DCUI ESXi Shell ESXi SSH ESXi Host Client vCenter --> vSphere web client / vSphere Client VMware vSphere ESXi主机的访问控制,除了......

大别阿郎
31分钟前
4
0
大神讲解CGI、FastCGI和PHP-FPM关系图解

参考资料 概念了解:CGI,FastCGI,PHP-CGI与PHP-FPM:http://www.nowamagic.net/librarys/veda/detail/1319 php中fastcgi和php-fpm是什么东西:https://www.zybuluo.com/phper/note/50231 ......

网络小虾米
40分钟前
4
0
《DNS攻击防范科普系列3》 -如何保障 DNS 操作安全

引言 前两讲我们介绍了 DNS 相关的攻击类型,以及针对 DDoS 攻击的防范措施。这些都是更底层的知识,有同学就来问能否讲讲和我们的日常操作相关的知识点,今天我们就来说说和我们日常 DNS 操...

Mr_zebra
41分钟前
4
0
zk中ServerCnxn

实现接口Stats, Watcher 内部类 DisconnectReason CloseRequestException EndOfStreamException(流关闭) 属性 方法 getSessionTimeout 获取session失效时间 sendResponse 发送回复数据 se......

writeademo
46分钟前
4
0
如何将 Redis 用于微服务通信的事件存储

来源:Redislabs 作者:Martin Forstner 翻译:Kevin (公众号:中间件小哥) 以我的经验,将某些应用拆分成更小的、松耦合的、可协同工作的独立逻辑业务服务会更易于构建和维护。这些服务(也...

中间件小哥
49分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部