原本以为做个对话框应该很简单,但是好像并不简单,以下是代码,编译没有问题,就是不能弹出对话框,看来java程序在我的脑子中根深蒂固了,在DFL上这样的模式估计不行。
需求很简单,就是一个弹出对话框,上面有几个文本框,可以输入一些数据。
module dfl.AgendaDialog;
import dfl.all;
class AgendaDialog: CommonDialog
{
Panel panelAgenda;
Label labelAgenda;
Label labelDate;
Label labelTimeFrom;
TextBox textBoxDate;
TextBox textBoxTimeFrom;
TextBox textBoxTimeTo;
RichTextBox richTextBoxAgenda;
this()
{
//Application.ppin(cast(void*)this);//有这句话编译都过不去
initializeMyPanel();
}
public override void reset()
{
}
public override DialogResult showDialog()
{
msgBox("befor show dialog, no para! ", "Info", MsgBoxButtons.OK, MsgBoxIcon.INFORMATION);
return runDialog(GetActiveWindow()) ? DialogResult.OK : DialogResult.CANCEL;
}
public override DialogResult showDialog(IWindow owner)
{
msgBox("befor show dialog, has para IWindow!", "Info", MsgBoxButtons.OK, MsgBoxIcon.INFORMATION);
return runDialog(owner ? owner.handle : GetActiveWindow()) ? DialogResult.OK : DialogResult.CANCEL;
}
public override bool runDialog(HWND owner)
{
return true;
}
private void initializeMyPanel()
{
panelAgenda = new Panel();
panelAgenda.name = "MyPanel";
panelAgenda.bounds = dfl.all.Rect(0, 0, 376, 248);
labelDate = new Label();
labelDate.name = "labelDate";
labelDate.text = "日期";
labelDate.textAlign = dfl.all.ContentAlignment.MIDDLE_RIGHT;
labelDate.bounds = dfl.all.Rect(8, 16, 44, 23);
labelDate.parent = panelAgenda;
textBoxDate = new TextBox();
textBoxDate.name = "textBoxDate";
textBoxDate.text = "textBoxDate";
textBoxDate.bounds = dfl.all.Rect(64, 16, 296, 23);
textBoxDate.parent = panelAgenda;
textBoxTimeFrom = new TextBox();
textBoxTimeFrom.name = "textBoxTimeFrom";
textBoxTimeFrom.text = "textBoxTimeFrom";
textBoxTimeFrom.bounds = dfl.all.Rect(64, 56, 120, 23);
textBoxTimeFrom.parent = panelAgenda;
labelTimeFrom = new Label();
labelTimeFrom.name = "labelTimeFrom";
labelTimeFrom.text = "时间";
labelTimeFrom.textAlign = dfl.all.ContentAlignment.MIDDLE_RIGHT;
labelTimeFrom.bounds = dfl.all.Rect(8, 56, 44, 23);
labelTimeFrom.parent = panelAgenda;
textBoxTimeTo = new TextBox();
textBoxTimeTo.name = "textBoxTimeTo";
textBoxTimeTo.text = "textBoxTimeTo";
textBoxTimeTo.bounds = dfl.all.Rect(240, 56, 120, 23);
textBoxTimeTo.parent = panelAgenda;
labelAgenda = new Label();
labelAgenda.name = "labelAgenda";
labelAgenda.text = "事件";
labelAgenda.textAlign = dfl.all.ContentAlignment.MIDDLE_RIGHT;
labelAgenda.bounds = dfl.all.Rect(8, 96, 44, 23);
labelAgenda.parent = panelAgenda;
richTextBoxAgenda = new RichTextBox();
richTextBoxAgenda.name = "richTextBoxAgenda";
richTextBoxAgenda.scrollBars = dfl.all.RichTextBoxScrollBars.VERTICAL;
richTextBoxAgenda.bounds = dfl.all.Rect(64, 96, 296, 144);
richTextBoxAgenda.parent = panelAgenda;
}
}
分享到:
相关推荐
DFL-ST II工具是一款由磁动电子科技自主开发的专业ST硬盘固件修复工具,与深受大家喜爱和赞誉的DFL-WD为兄弟产品。 DFL-ST II工具主要针对市面上的7200.7-7200.10系列及11、12代的F3系列的ST硬盘而设计。DFL-ST II...
DFL-DE是专业的数据恢复软硬件USB2.0设备,该组件能够对ATA,SATA所有硬盘进行数据恢复,该设备也能够对连接于DFL-WD的SATA端口使用48位寻址方式的硬盘工作,同也也可以对任何操作系统识别的存储装置进行数据恢复。...
总结来说,DFL for DMD2.031是D语言开发中一个不可或缺的工具,它与DMD的紧密配合使得开发者能够更好地利用D语言的特性,实现高效、高质量的软件开发。无论是新手还是经验丰富的D语言程序员,都应该了解并掌握这个...
DFL210配置示例 DFL系列防火墙配置
这款软件可能是一个专门针对硬盘修复或数据恢复的工具,因为“WD”通常与西部数据(Western Digital)这个知名的硬盘制造商相关联,而“DFL”可能是该工具系列的缩写或者公司名称。 描述中的内容重复了标题,没有...
在DFL员工福利商业保险项目信息管理系统中,服务器端通常会部署像Oracle、Sybase、Informix或SQL Server这样的关系型数据库管理系统,用于存储大量的保险业务数据。Web服务器则作为中间件,处理来自浏览器的请求,将...
DFL系列防火牆簡易安裝手冊 DFL-210,260,800,860,1600,2500 適用。
在人脸识别中,SVM通过对训练样本进行学习,找到一个最优的超平面作为决策边界,可以有效地处理小样本、非线性和高维问题。SVM的核心思想是找到最大间隔的分类超平面,使得两类样本在超平面两侧的距离最大化,从而...
由于提供的文件名称列表只有一个:"dfl-20070907",我们可以推测这个压缩包中可能包含了整个DFL库的源代码、编译脚本、文档,甚至可能有一些示例程序或者测试用例。解压后,开发者可以浏览源码,了解其设计结构和...
标题中的“PyPI 官网下载 | DFL168A-1.0.0-py3-none-any.whl”表明这是一个在Python Package Index(PyPI)官网上发布的软件包,名为DFL168A,版本号为1.0.0。这个包是为Python 3编写的,其构建格式是wheel,且适用...
DFL系列防火牆如果阻檔URL DFL-210,260,800,860,1600,2500 適用
DFL2调色插件 DFL2调色插件 DFL2调色插件
### DFL干膜润滑剂知识点解析 ...通过以上详细解析,我们可以了解到DFL干膜润滑剂不仅具有优异的产品特性,还适用于多个行业的广泛应用场景。无论是工业制造还是日常生活,DFL干膜润滑剂都能提供有效的解决方案。
国际著名网络设备和解决方案提供商D-Link推出区域联防机制,并将其应用在新一代的安全产品--DFL-800/1600高性能 整合式防火墙中,不仅通过在网络安全设备之间建立互动机制,实现对网络安全设备的有效整合,将传统...
希捷7200.12系列硬盘在使用过程中可能会遇到一个常见的问题,即扇区访问中断,导致部分数据无法读取。这个问题的根源通常与硬盘的内部机制有关,特别是与翻译表或P表的异常状态紧密关联。当硬盘出现7200.12-cap = 0...
标题中的"sm2246XT 15纳米 DFL EFL JFL 4way.zip"指的是一个专门针对SM2246XT主控芯片的开卡工具,该工具适用于15纳米制程的存储设备。这个压缩包包含了不同类型的固件或软件,可能用于处理DFL(Data Flash Loader)...
TOSHIBA-TC55257DFL.pdf