小编Edw*_*Yip的帖子

如何可靠地将Virtual TreeView滚动到底部?

具有自定义节点高度的TVirtualStringTree对象,如何可靠地将Virtual TreeView滚动到底部(即滚动条到达底部)?

我打过电话tree1.FullExpand,然后tree1.ScrollIntoView.(tree1.GetLast),但它不工作.

先感谢您.

delphi virtualtreeview

6
推荐指数
1
解决办法
4554
查看次数

如何将HTML文件编译成CHM文件?

如何在我的代码(Delphi)中从一堆HTML(带有链接的图像文件)制作CHM文件?需要详细信息,谢谢!

html delphi chm helpfile

6
推荐指数
2
解决办法
4321
查看次数

德尔福最大的错误或限制.常数整数值?

const
  minDriveFreeSpace: Int64 = 1024*1024*1024*99;
Run Code Online (Sandbox Code Playgroud)

var
  minDriveFreeSpace: Int64;
begin
  minDriveFreeSpace := 1024*1024*1024*99;
Run Code Online (Sandbox Code Playgroud)

会发出:

[dcc32 Error] DataStoreLocator.pas(92): E2099 Overflow in conversion or arithmetic operation
Run Code Online (Sandbox Code Playgroud)

这是Delphi最大的错误还是限制.常数整数值?

delphi delphi-xe4

6
推荐指数
1
解决办法
964
查看次数

常量`基数'数组产生错误'常量表达式违反了子范围"

为什么以下代码:

const
  ANSICOLORS: array of cardinal = [
    $000000,//0
    $800000,//1, compilation error starts with this value
    $008000,//2
    $808000,//3
    $000080,//4
    $800080,//5
    $008080,//6
    $D0D0D0,//7
    $3F3F3F,//8
    $FF0000,//9
    $00FF00,//A
    $FFFF00,//B
    $0000FF,//C
    $FF00FF,//D
    $00FFFF,//E
    $FFFFFF];//F
Run Code Online (Sandbox Code Playgroud)

将在Delphi XE4(win32和win64)下产生以下编译错误:

[dcc32错误] Debug.pas(66):E1012常量表达式违反了子范围边界

价值是否$800000在范围内Cardinal

delphi compiler-errors delphi-xe4

6
推荐指数
2
解决办法
126
查看次数

是否可以替换系统打开文件对话框?

我想用我编写的对话框替换标准的系统打开文件对话框,这意味着无论您在哪个程序中打开文件,都将显示对话框而不是标准的对话框,这可能吗?

似乎没有提供这样的API可以完成此操作,是否可以使用某种挂钩技术,但这必须可靠并且不能被防病毒工具视为间谍软件?

还有其他选择吗?

如果无法实现,则可以在标准打开文件对话框的空格键或工具栏上添加一个按钮,该按钮调用我的对话框,该按钮允许用户选择文件,然后将所选文件的路径返回到“文件名” “标准对话框的输入框?

任何点击,链接和代码示例将不胜感激。

windows api openfiledialog

5
推荐指数
1
解决办法
2390
查看次数

在Delphi中实现'标签面板'控件?

请看一下这个截图

替代文字http://www.maclife.com/files/u18/Yep3-big.jpg

我认为这些是'标签面板'的主要特征:

1)面板上的每个标签都是独立控件,可以单击

2)当没有足够的空间显示当前行中的下一个标记时自动换行.

3)每个标签的圆角矩形边框是一个很好的功能.

我想在Delphi中实现类似的功能,是否有现成的控件来执行此操作?如果没有,实施这种控制的最佳方法是什么?

谢谢.

delphi tagging

5
推荐指数
2
解决办法
782
查看次数

使用Delphi 7进行开发时,为Delphi 2009做好准备吗?

我正在Delphi 7中开发一个Word插件,但很快我会将它升级到Delphi 2010,因为你知道,因为2009版本Delphi引入了新的字符串类型UnicodeString,它等于关键字字符串.另一方面,根据这个线程,我们需要使用WideString与COM通信.

我的问题是,为了在将来开发Delphi 7时为Delphi 2010做好准备,我该怎么做?目前在我的代码中我使用了用户定义的类型UnicodeString,其想法是当使用D7编译时我的字符串是WideString,当使用D2009编译它的UnicodeString时,我看到Virtual TreeView使用这样的技术,如下面的代码:

{$ifndef COMPILER_12_UP}
type
  UnicodeString = WideString;
  PByte = PAnsiChar;
{$endif COMPILER_12_UP}
Run Code Online (Sandbox Code Playgroud)

delphi unicode

5
推荐指数
1
解决办法
406
查看次数

将方法指针转换为整数,然后调用它

我想知道以下是否可能,如果是,怎么样?代码示例请.

  • 如何将指向对象方法的指针存储为整数值
  • 如何将该整数值转换回'方法指针'并调用它

我想要做的是将'方法指针'存储在TComponent派生对象的整数Tag值中,稍后调用存储的方法.您可以假设所有met方法具有相同的定义.

谢谢!

delphi

5
推荐指数
2
解决办法
6232
查看次数

使用libxml,如何获取源xml文件中给定元素或属性的字符位置?

使用libxml2,我们可以使用xmlGetLineNo获取节点出现在源XML文件中的行号.

但是如何获得给定元素给定属性的字符位置?对于节点和属性,我需要源xml文件中的startend位置.

谢谢!

xml libxml2 xml-parsing

5
推荐指数
1
解决办法
718
查看次数

为菜单项设置"仅查看"快捷方式?

我们知道如果我们将一个快捷方式(例如,Ctrl + F2)设置为TMenuItem,一旦按下指定的快捷方式,菜单项将自动执行,并且在显示菜单时也会显示快捷方式描述.

但有没有办法让菜单项上的快捷方式描述可见,但菜单不会自动响应快捷方式?

你可能会问我为什么要这样,这是情况:

在多文档(如firefox的多个选项卡)程序中,有多个TPopupMenu实例,因此多个TMenuItem对象具有相同的快捷方式,但我只希望活动文档窗口中的菜单项响应快捷方式.


编辑1:对不起,我想简化我的问题并且我错误地描述了 - 实际上,我使用TActionList并将操作链接到菜单项.


编辑2:刚刚发现:我认为我可以使用TApplicationEvents.OnShortCut事件来拦截快捷方式,然后将它们发送到菜单/操作......我会尝试并在我得到结果时更新我的​​问题.

delphi

5
推荐指数
1
解决办法
1359
查看次数