社区
C++ Builder
帖子详情
在CB中怎样使用动态控件?
dot99
2002-08-29 10:59:32
我是一个cb新手,所以不知道这样问对否?
在cb里面,一般都使用设计好的控件,然后就可以对其进行控制了
那,可不可以这样使用呢?
TEdit * edSt;
edSt = new TEdit;
这样做以后,edSt又是在什么地方出现呢,其默认属性如何?
还有,在什么地方使用new呢,是否要修改相关的继承下来的接口?
或是做点其他的什么事情?
能否给一段供参考的代码或者其他的网上可以查到的相关资源?
谢谢
dot99
...全文
81
6
打赏
收藏
在CB中怎样使用动态控件?
我是一个cb新手,所以不知道这样问对否? 在cb里面,一般都使用设计好的控件,然后就可以对其进行控制了 那,可不可以这样使用呢? TEdit * edSt; edSt = new TEdit; 这样做以后,edSt又是在什么地方出现呢,其默认属性如何? 还有,在什么地方使用new呢,是否要修改相关的继承下来的接口? 或是做点其他的什么事情? 能否给一段供参考的代码或者其他的网上可以查到的相关资源? 谢谢 dot99
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
superaf
2002-08-29
打赏
举报
回复
每一个函数里面都隐含一个this指针,象类里面的对象一样,都隐藏了this指针。application参数是指整个应用程序的句柄。而这个参数的意思是说明这个控件的owner是那个,由谁来负责释放它的内存等处理。注意,他和parent的意义是不同的、
例如:
void __fastcall Test(void)
{
TEdit *myEdit = new TEdit(this);
// TEdit *myEdit = new TEdit(Application); 这两个myedit的所有者就不同,他们由谁来释放内存也都是不同管理者处理的、
myEdit->Left = 50;
myEdit->Top = 50;
myEdit->Parent = Form1;
}
dot99
2002-08-29
打赏
举报
回复
我可能没有问清楚~~
我去试一下~~~
zhuJIM
2002-08-29
打赏
举报
回复
TEdit *myEdit = new TEdit(Application);
myEdit->Left = 50;
myEdit->Top = 50;
myEdit->Parent = Form1;
这样也行,不知道 Application 和 this 什么区别?
zhouzhu
2002-08-29
打赏
举报
回复
什么意思?不懂
如果要用动态,就用
TEdit *myEdit = new TEdit(this);
myEdit->Left = 50;
myEdit->Top = 50;
myEdit->Parent = Form1;
521zhou
2002-08-29
打赏
举报
回复
如动态生成好多个新的窗体,那在哪里椒放资源啊。
zsyy
2002-08-29
打赏
举报
回复
//------------------------------------------------------------------
#ifndef Unit1H
#define Unit1H
//------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
//------------------------------------------------------------------
class TForm1 : public TForm
{
__published: // IDE-managed Components
void __fastcall FormCreate(TObject *Sender);
void __fastcall FormClose(TObject *Sender, TCloseAction &Action);
private: // User declarations
public: // User declarations
TEdit * edSt; //添加此行代码
__fastcall TForm1(TComponent* Owner);
};
//------------------------------------------------------------------
extern PACKAGE TForm1 *Form1;
//------------------------------------------------------------------
#endif
//------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//------------------------------------------------------------------
//添加FormCreate和FormClose事件
//------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
edSt = new TEdit(Form1);
edSt->Text = "Hello World!";
edSt->Width = 100;
edSt->Height = 32;
edSt->Top = 16;
edSt->Left = 16;
edSt->Parent = Form1;
//还可以修改更多的属性,如字体。
edSt->Show();
}
//------------------------------------------------------------------
void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action)
{
delete edSt;
}
//------------------------------------------------------------------
MFC
中
动态
控件
的创建与响应
本文详细介绍了如何在对话框
中
动态
生成和响应静态
控件
,如按钮、单选按钮等,通过手动创建
控件
ID、
使用
CB
utton类的Create()函数创建
控件
,并实现
动态
控件
的响应和回收资源。
LittlevGL事件机制原理与工程实践指南
本文系统剖析LittlevGL事件机制的底层原理与工程实践,涵盖事件抽象模型、20种事件类型(12种通用+8种专用)、lv_obj_add_event_
cb
注册流程、事件分发与冒泡机制、回调函数设计规范及内存安全要点。重点讲解LV_EVENT_CLICKED等核心事件的应用场景,并通过双按钮协同、
动态
控件
绑定等实战案例,揭示事件调试技巧、三大常见陷阱规避策略及实时性性能优化方法。
ESP32S3驱动1.3寸AMOLED圆屏,LVGL局部刷新花屏?一个回调函数搞定RM67162芯片的坑
本文针对ESP32S3驱动RM67162芯片AMOLED圆屏时LVGL局部刷新花屏问题,深入分析其根源——RM67162要求行列地址必须为偶数。通过实现lv_disp_drv_t
中
的area_align_
cb
回调函数,对刷新区域坐标进行自动偶数对齐,有效解决撕裂与错位问题。该方案显著提升局部刷新帧率(达45FPS)、降低CPU占用与功耗,并具备跨平台兼容性,适用于STM32、nRF52等MCU。
B
CB
高手进阶-如何实现
控件
数组
本文介绍在C++Builder
中
实现
控件
数组的方法,利用TList类创建
动态
控件
数组,并通过实例演示如何添加、移动
控件
。
ESP32S3驱动圆形AMOLED屏:LVGL局部刷新避坑与SPI优化实战
本文围绕ESP32S3驱动RM67162芯片的圆形AMOLED屏展开,重点解析LVGL局部刷新失效的根本原因——RM67162要求行列地址偶数对齐,而LVGL默认坐标未适配;提出通过rounder_
cb
回调函数
动态
修正刷新区域坐标的解决方案。同时深入优化SPI传输:采用双缓冲DMA、数据包合并与
动态
时钟调节,提升吞吐量30%并降低功耗20%。涵盖硬件选型、LVGL 8.3移植、电源/温控设计及性能调优实践。
C++ Builder
13,872
社区成员
102,696
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章