动态创建Ⅱ

//动态创建数组控件;和动态绑定它的事件、 (这里为了在Panel画颜色,引用了Raize里面的RzPanel)

interface

uses

Windows, Messages,
SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls,
ExtCtrls, Buttons, PanelGroup, RzPanel, RzButton,RzComMon;

type

TForm1 =
class(TForm)

Button1:
TButton;

BitBtn1:
TBitBtn;

Image1:
TImage;

Bevel1:
TBevel;

RzPanel1:
TRzPanel;

procedure
FormCreate(Sender: TObject);

private

{
Private declarations }

public

procedure
PanelOnEnter(Sender: TObject);

procedure
PanelOnClick(Sender: TObject);

end;

var

Form1:
TForm1;

RzPanel :
array[0..31,0..6] of 
TRzPanel;

implementation

{$R *.dfm}

//创建色板

procedure TForm1.FormCreate(Sender: TObject);

var

I,j : integer;

str,R,G,B: string;

begin

for i:=0
to 31 do

begin

for
j:=0 to 6  do

begin

RzPanel[i][j]:= TRzPanel.Create(nil);

RzPanel[i][j].Parent :=Form1;

RzPanel[i][j].Top := j*(RzPanel[i][j].Top +30)+15;

RzPanel[i][j].Height := 23;

RzPanel[i][j].Width :=23;

RzPanel[i][j].Left := i* (RzPanel[i][j].Width+5) + 60;

RzPanel[i][j].ShowHint := true;

RzPanel[i][j].BorderOuter := fsNone;

RzPanel[i][j].BorderColor := clActiveBorder;

RzPanel[i][j].BorderWidth := 1;

RzPanel[i][j].OnMouseEnter := PanelOnEnter;

RzPanel[i][j].OnClick := PanelOnClick;

end;

RzPanel[i][0].Color := RGB(255,255,255-i*2);

str
:= ‘$‘;

R :=
format(‘%0x‘,[ord(255)]);

G :=
format(‘%0x‘,[ord(255)]);

B :=
format(‘%0x‘,[ord(255-i*2)]);

RzPanel[i][0].Hint := Str + R +G +B;

RzPanel[i][1].Color := RGB(255,255-i*2,255);

R :=
format(‘%0x‘,[ord(255)]);

G :=
format(‘%0x‘,[ord(255-i*2)]);

B :=
format(‘%0x‘,[ord(255)]);

RzPanel[i][1].Hint := Str + R +G +B;

RzPanel[i][2].Color := RGB(255,255-i*2,255-i*2);

R :=
format(‘%0x‘,[ord(255)]);

G :=
format(‘%0x‘,[ord(255-i*2)]);

B :=
format(‘%0x‘,[ord(255-i*2)]);

RzPanel[i][2].Hint
:= Str + R +G +B;

RzPanel[i][3].Color := RGB(255-i*2,255,255);

R :=
format(‘%0x‘,[ord(255-i*2)]);

G :=
format(‘%0x‘,[ord(255)]);

B :=
format(‘%0x‘,[ord(255)]);

RzPanel[i][3].Hint := Str + R +G +B;

RzPanel[i][4].Color := RGB(255-i*2,255,255-i*2);

R :=
format(‘%0x‘,[ord(255-i*2)]);

G :=
format(‘%0x‘,[ord(255)]);

B :=
format(‘%0x‘,[ord(255-i*2)]);

RzPanel[i][4].Hint := Str + R +G +B;

RzPanel[i][5].Color := RGB(255-i*2,255-i*2,255);

R :=
format(‘%0x‘,[ord(255-i*2)]);

G :=
format(‘%0x‘,[ord(255-i*2)]);

B :=
format(‘%0x‘,[ord(255)]);

RzPanel[i][5].Hint := Str + R +G +B;

RzPanel[i][6].Color := RGB(255-i*2,255-i*2,255-i*2);

R :=
format(‘%0x‘,[ord(255-i*2)]);

G :=
format(‘%0x‘,[ord(255-i*2)]);

B :=
format(‘%0x‘,[ord(255-i*2)]);

RzPanel[i][6].Hint := Str + R +G +B;

end;

end;

动态创建Ⅱ

时间: 2024-10-24 12:07:45

动态创建Ⅱ的相关文章

mybatis3动态创建表,判断表是否存在,删除表

1.mybatis3动态创建表,判断表是否存在,删除表 mapper配置文件: <span style="font-size:18px;"><?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/

Android编程动态创建视图View的方法

在Android开 发中,在Activity中关联视图View是一般使用setContentView方法,该方法一种参数是使用XML资源直接创 建:setContentView (int layoutResID),指定layout中的一个XML的ID即可,这种方法简单.另一个方法是 setContentView(android.view.View),参数是指定一个视图View对象,这种方法可以使用自定义的视图类. 在一些场合中,需要对View进行一些定制处理,比如获取到Canvas进行图像绘制,

WinForm用户控件、动态创建添加控件、timer控件--2016年12月12日

好文要顶 关注我 收藏该文 徐淳 关注 - 1 粉丝 - 3 0 0 用户控件: 通过布局将多个控件整合为一个控件,根据自己的需要进行修改,可对用户控件内的所有控件及控件属性进行修改使用 动态创建添加控件: 1 //定义控件类型 2 Button btn = new Button(); 3 //控件名称……等属性,也可以直接绑定各种事件 4 btn.Name = "mybutton" + i.ToString(); 5 //添加到窗体 this 可以替换为 容器控件 6 this.Co

fragment 事务回滚 ---动态创建fragment

1 import java.util.Date; 2 import java.util.LinkedList; 3 4 import com.qianfeng.gp08_day23_fragment5.fragment.TestFragment; 5 6 import android.os.Bundle; 7 import android.app.Activity; 8 import android.app.Fragment; 9 import android.app.FragmentTrans

BroadcastReceiver接收电量变化的广播-------在代码中动态创建接受者

本例为动态创建广播接收者即不是在AndroidManifest.xml文件中定义的广播接收着 代码: 1 package com.qf.broadcastreceiver01; 2 3 import android.app.Activity; 4 import android.app.AlertDialog; 5 import android.content.BroadcastReceiver; 6 import android.content.Context; 7 import android

oaf 动态创建table vo (转)

原文地址:如何动态创建table 需求: 因为系统中有几千个QA plan 但是不能手动创建几千个 质量收集页面所有需要根据 不同的plan 动态创建对应的 质量收集页面. 但是创建tabel 都要绑定一个 具体的vo  而我需要一个动态的如果用 select ... from dual 的话 字段的个数如何动态? 感谢答主sumury 方案0.1版本 //用以下的代码可以实现,但是有一点不足,就是当数据量比较多的时候,无法按照指定的行数进行分页显示. //先在页面上创建一个advancedTa

MVVM下 利用反射动态创建ViewModel 实现单例

在MVVM一般情况下都会希望ViewModel 在整个应用程序中只有一份实例 传统的做法是用单例模式去实现 : public class ViewModelTest { private ViewModelTest() { } private static ViewModelTest viewModelInstace; public static ViewModelTest GetViewModelTestInstace() { if (viewModelInstace == null) { vi

Delphi 动态创建组件,单个创建、单个销毁

效果图如下: 实现部分代码如下: var rec: Integer = 0; //记录增行按钮点击次数 implementation {$R *.dfm} //动态释放单个组件内存,即销毁组件 procedure TForm1.DeleteRow(Sender: TObject); begin if rec < 1 then Exit else begin TPanel(Panel1.Controls[rec]).Free; //释放单个控件内存 TComboBox(Panel2.Control

Sql语句不能识别Go的解决办法(动态创建表的触发器)

问题来源 用sqlserver直接打开sql文本,执行没问题,但是当用Sqlcommand类执行cmdtext命令文本时总是失败报错. 原因分析及解决 用数据库直接执行sql语句没问题,甚至还可以用Go来进行分批处理,但是当你用链接类访问数据库,并执行sql语句时就有些限制,如下: System.Data.SqlClient.SqlCommand cmd; try { using (System.Data.SqlClient.SqlConnection newconn = new System.

GUI动态创建按钮

#include "cocos2d.h" #include "cocos-ext.h" USING_NS_CC; USING_NS_CC_EXT; using namespace ui; UIButton *button = UIButton::create(); button->setTouchEnabled(true); button->loadTextures("close1.png", "close2.png&quo