Delphi中多标签页面的实现
unit uMain; interface uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, RzTabs, Menus; type
TFrmMain = class(TForm)
RzPageControl1: TRzPageControl;
MainMenu1: TMainMenu;
N1: TMenuItem;
N11: TMenuItem;
N21: TMenuItem;
N31: TMenuItem;
TabSheet1: TRzTabSheet;
procedure N11Click(Sender: TObject);
procedure N21Click(Sender: TObject);
procedure N31Click(Sender: TObject);
procedure RzPageControl1Close(Sender: TObject; var AllowClose: Boolean);
private
{ Private declarations }
public
procedure ShowDockForm(FormClass: TFormClass; dockCtrl: TRzPageControl ); end; var
FrmMain: TFrmMain; implementation uses
Unit1; {$R *.dfm}
{ TForm12 } procedure TFrmMain.N11Click(Sender: TObject);
begin
ShowDockForm(TForm1,RzPageControl1);
end; //procedure TFrmMain.N21Click(Sender: TObject);
//begin
// ShowDockForm(TForm2,RzPageControl1);
//end;
//
//procedure TFrmMain.N31Click(Sender: TObject);
//begin
// ShowDockForm(TForm3,RzPageControl1);
//end; procedure TFrmMain.RzPageControl1Close(Sender: TObject;
var AllowClose: Boolean);
begin
AllowClose := RzPageControl1.ActivePageIndex >;
end; procedure TFrmMain.ShowDockForm(FormClass: TFormClass; dockCtrl: TRzPageControl);
procedure ShowCaption(ParentCtrl: TWinControl; ACaption: string);
begin
if ParentCtrl is TRzTabSheet then
TRzTabSheet(ParentCtrl).Caption := ACaption;
end; var
i: Integer;
TabCtrl: TRzTabSheet;
Form: TForm;
begin
Screen.Cursor := crHourGlass;
try
for i := to Screen.CustomFormCount - do
if Screen.CustomForms[i] is FormClass then
begin
if (not(Screen.CustomForms[i]).Visible) then
(Screen.CustomForms[i]).Visible := True;
(Screen.CustomForms[i]).BringToFront;
(Screen.CustomForms[i]).SetFocus;
TabCtrl := TRzTabSheet(Screen.CustomForms[i].Parent);
ShowCaption(TabCtrl, Screen.CustomForms[i].Caption);
TRzPageControl(dockCtrl).ActivePageIndex := TabCtrl.PageIndex;
exit;
end; TabCtrl := TRzTabSheet.Create(dockCtrl); // dockCtrl
TabCtrl.PageControl := TRzPageControl(dockCtrl);
TRzPageControl(dockCtrl).ActivePageIndex := TabCtrl.PageIndex; Form := FormClass.Create(TabCtrl);
with Form do
try
ManualDock(TabCtrl);
ShowCaption(TabCtrl, Caption); Show;
Form.WindowState := wsMaximized;
Form.Align := alClient;
except
Free;
end; finally
Screen.Cursor := crDefault;
end;
end; end.
http://blog.csdn.net/diligentcatrich/article/details/8281965
Delphi中多标签页面的实现的更多相关文章
- 禁止手机页面中A标签长按弹出路径框
//禁止手机页面中A标签长按弹出路径框 window.onload=function(){ document.documentElement.style.webkitTouchCa ...
- 在php中,如何将一个页面中的标签,替换为用户想输出的内容
前言:釜山行,暴露人性, ———————————————————————————————————————————————————————————————————————————— 今天说一个最简单的例 ...
- js 和 css 中 不能使用 jsp 页面中一些 标签 和 java 代码等,应注意
js 和 css 中 不能使用 jsp 页面中一些 标签 和 java 代码等,应注意 如 ${ } <%%> 等
- Struts2页面开发中常用标签使用说明
1. Struts2页面开发中常用标签使用说明 1.1.往action里传值的使用方式: <input name="userName" type="text&quo ...
- 用JS改变页面中b标签的样式啊 样式的等
用JS改变页面中b标签的样式啊 样式的等 ,实际上是在标签内加上样式 ,用媒体查询的话 ,不能生效 <!DOCTYPE html> <html lang="en&qu ...
- delphi中webbrowser的用法
WebBrowser1.GoHome; //到浏览器默认主页 WebBrowser1.Refresh; //刷新 WebBrowser1.GoBack; //后退 WebBrowser1.GoForw ...
- jsp2.0+中的标签文件,JSP Fragment技术
刚进新公司不久,今天在看到项目中用到了.tag文件.刚开始我还以为这个是第三方类似freemarker的模板技术.问了下项目组的其他人员,原来这是jsp2.0以来就有的JSP Fragment技术.以 ...
- Html中<a>标签的样式的设置
html中<a>标签的样式的设置.. ------------------------ <html> <head> <title>这是网页选项卡的名称& ...
- JSP中<img>标签引用本地图片
问题描述: jsp页面中<img>标签如何读取本地文件夹中的图片. 问题起因: 由于上传图片至本地文件夹中,图片路径为: D:/upload/file/image/img.jpg 所以将这 ...
随机推荐
- Shiro入门(1)
=============基本概念=================== 什么是Apache Shiro? Apache Shiro(发音为“shee-roh”,日语“堡垒(Castle)”的意思)是 ...
- git 使用过程(三、文件的添加 修改)
1.库中添加文件 在目录下新建一个文件 如 testfile.txt .输入命令:① git add testfile.txt ②git commit -m "这里是你提交的说明" ...
- Xcode的Architectures、Valid Architectures和Build Active Architecture Only属性
Architectures 这代表,在这个项目里你想要Xcode编译的目标设备列表. Valid Architectures 还不是太明确这个设置的意图,但是一般来说是不需要更改的,和Architec ...
- c++隐藏实例
隐藏:是指派生类的函数屏蔽了与其同名的基类函数,规则如下:(1)如果派生类的函数与基类的函数同名,但是参数不同.此时,不论有无virtual关键字,基类的函数将被隐藏(注意别与重载混淆). 很简单略去 ...
- OpenGL ES 如何能看到一个物体内部和象3dmax中能只显示网格线
上一篇 OpenGL ES 正反面设置指令 中分析了正反面的判区方法,那么正反面有什么用呢?接下来我们就要引入一个叫做背面消除的概念.在3dmax中有个选项,当你用挤压修改器挤出一个中空的长方体时,在 ...
- [转]TOMCAT原理以及处理HTTP请求的过程、ContextPath ServletPath
一.TOMCAT 1 - Tomcat Server的组成部分 <Server> <Service> <Connector/> ...
- (Problem 14)Longest Collatz sequence
The following iterative sequence is defined for the set of positive integers: n n/2 (n is even) n 3n ...
- Chrome设计文档-多进程资源加载
原文:Multi-process Resource Loading 背景 浏览器主进程及browser process处理所有的网络通信.原因有三点: Browser process可以控制每一个re ...
- 限制QLineEdit的数值输入范围(一共4种限制器:QDoubleValidator, QIntValidator, QRegExpValidator, 和QRegularExpressionValidator)
在使用QLineEdit输入数值时,经常遇到限制其范围的需要,比如角太阳高度角范围为[-90,90],经度值范围[-180,180],方位角范围[0,360].Qt提供了QIntValidator和Q ...
- Impossible WPF Part 1: Binding Properties
原文 http://www.11011.net/wpf-binding-properties Ever wanted to write the following? <RichTextBoxDo ...