我有一个习惯TLabel,原则上可以附加到表单中的任何其他可视组件.该组件具有一个属性position,告诉它将朝向附加控件(左侧,上方等)的位置.当附加相关控件时,这可以正常工作,并且组件根据position属性定位自身.
问题是当相关控件改变它的界限时我无法检测组件,因此它可以正确地重新定位自己.我想这与WMMove和有关WMResize.如何通知相关控件以通知TLabel任何边界属性已更改?
每次打开项目时,它都会打开相同的.pas文件.即使我关闭这些文件并打开其他文件,当我关闭并重新打开项目时,也会打开相同的原始文件.我怎么解决这个问题?
我双击Delphi图标desktop,但IDE没有显示.查看Task Manager列表,BDS.exe显示在Processes列表下方,而它应显示在Applications列表下方.有谁知道为什么会这样?注意:IDE我目前使用XE3的2010版本是,但是同样安装的版本的行为方式相同.Windows version is 8.1.我非常感谢任何帮助.
有没有办法隐藏 DBGrid 上的 Titles 行和 Indicator 列?我找不到任何此类财产。我可以以编程方式完成吗?
我想获取关于容器表单的控件的 Left,Top 坐标。同时,目标控件可能位于任意数量的其他容器(例如 TPanels 和 TGroupBoxes)内。这意味着要获取目标控件原点,代码必须考虑所有其他容器的 Left,Top 坐标 + 目标控件本身的 Left,Top 坐标。相反,我使用了第二个方法,即使用 ClientToScreen 函数获取目标控件的 Left,Top 屏幕坐标,然后减去窗体的 Left,Top 坐标。可悲的是,这种方法不起作用。我附上了一张图像,它阐明了我的想法,并提供了我用来计算所需坐标的实际代码。我很感激这方面的任何帮助。
我有一个基于TPanel的自定义组件.目的是在顶部显示一个所谓的"标题区域",它显示一个标题并具有可自定义的边框和背景颜色.它工作正常,除了一个小问题:在设计时,当点击"标题区域"时,组件未被选中(蓝色项目符号不会出现),这意味着我无法拖动或修改组件的属性.如果我在"标题区域"外单击,则选择该组件.任何人都可以
解决这个问题?提前致谢.遵循简短的描述性图像:
我的应用程序使用一个TClientDataSet和一个TDataSource集合。不DataBase涉及。将TClientDataSet被保存在XML格式。我TClientDataSet使用DataSet.SaveToFile方法保存,并且这样做,保存的文件保留了增量更改。我不能使用该DataSet.UpplyUpdates方法,因为如前所述,没有DataBase 因此也没有Provider。
DataSet.SaveToFile ('SavedFile.XML') // this retains Delta changes
DataSet.ApplyUpdates (0) // can't use it (no Provider)
我的问题是:在将 Delta 更改TClientDataSet保存到文件之前,如何强制对其应用 Delta 更改?如果保存为某种binary格式,是否会应用 Delta 更改?。注意:关闭并随后打开TClientDataSet也不起作用。