小编Tri*_*enT的帖子

如何在Delphi中重新组织我单位的文件夹结构?

我用Delphi开始了一个原型,所有源文件都在一个目录下.
现在,我想用文件夹重新组织所有内容.

我找到了两种方法来做到这一点.

1 /首先是在Delphi IDE和Save as 新文件夹中打开每个单元.然后删除旧的单元文件.

2 /在Windows资源管理器下,重新组织所有内容,然后在Delphi IDE中打开项目,删除对旧(未知)单元的引用,然后按文件夹添加每个单元文件夹.

因为我有100多个单位,无论我使用什么方法(1或2),它都非常痛苦.
你是如何进行这种重组的? 我错过了一个功能吗?

delphi directory refactoring directory-structure delphi-xe

14
推荐指数
1
解决办法
4305
查看次数

为什么Delphi说"无法解析单位名称xxx"?

我正在使用Delphi2010 Enterprise Update 4.
当我在IDE中打开我的项目并显示mainform代码时,有2个单元名称以红色下划线.

xxx http://img268.imageshack.us/img268/6475/unitnameunresolved.png.

我已经验证了单位源的路径在Library path和中Browsing path.

令人惊讶的是,当我右键单击该单元并选择时Open file at cursor,它可以工作(即delphi打开正确的单元).

有什么想法吗?

ide delphi delphi-2010

11
推荐指数
1
解决办法
2万
查看次数

Delphi函数比较两个TStream的内容?

我需要比较两个TStream后代是否具有相同的内容.对我来说唯一有趣的结果是布尔值是/否.

我将编写一个简单的循环检查字节流内容的字节.

但我很好奇,要知道,如果有一个已经存在的功能.我没有找到任何内部DelphiXE或JCL/JVCL库.

当然,这两个流的大小相同!

delphi compare stream delphi-xe

9
推荐指数
3
解决办法
5906
查看次数

如何测试我自己(小)嵌入式操作系统的可靠性?

在中小型目标上运行的嵌入式项目编写了一个小型操作系统.

我添加了一些具有高测试代码覆盖率(> 95%)的自动化单元测试,但范围仅是静态部分.
我得到了一些代码指标作为复杂性和可读性.
我正在使用支持MiSRA的规则检查器测试我的代码,当然还修复了所有警告.
我正在使用静态分析器测试代码并再次修复所有警告.

我现在可以做些什么来测试和改进我的操作系统的可靠性? 动态部分怎么样?

c embedded unit-testing operating-system reliability

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

如何使用CruiseControlNet将集成属性传递给批处理文件?

在我的项目的构建日志中,我可以看到这些属性:

<integrationProperties>
  <CCNetProject>Gdet_T</CCNetProject>
  ...
  <LastModificationDate>4/6/2010 1:29:04 PM</LastModificationDate>
  <LastChangeNumber>10841</LastChangeNumber>
</integrationProperties>
Run Code Online (Sandbox Code Playgroud)

我想通过财产CCNetProjectLastChangeNumber批处理文件.它可以很好地使用CCNetProject,因为它可以在批处理中用作环境变量%CCNetProject%.

但它不适用于其他属性(那些不是以CCnet前缀开头)为LastChangeNumberLastModificationDate.

我试图将它作为参数传递,但它失败了!

<exec>
  <executable>$(WorkingFolderBase)\MyBatch.bat</executable>
  <baseDirectory>$(WorkingFolderBase)\</baseDirectory>
  <buildArgs>$(LastModificationDate)</buildArgs>
</exec>
Run Code Online (Sandbox Code Playgroud)

我试图将其作为环境变量传递,但它失败了:

<exec>
  <executable>$(WorkingFolderBase)\MyBatch.bat</executable>
  <baseDirectory>$(WorkingFolderBase)\</baseDirectory>
  <environment>
    <variable>
      <name>svn_label</name>
      <value>"${LastModificationDate}"</value>
    </variable>
  </environment>
</exec>
Run Code Online (Sandbox Code Playgroud)

当我显示参数或变量时,结果总是相同的:空字符串或变量名称 $(svn_label)

我确信这很简单,但是......我找不到了!任何的想法 ?

cruisecontrol.net continuous-integration ccnet-config

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

如何显示类似于Delphi XE工具提示代码洞察力的工具提示或提示

我正在考虑实现一个工具提示,类似于Delphi XE在您调试时将其悬停在对象上的方式.即,它打开一个带有+符号的提示窗口,您可以展开等.

我正在尝试创建一个提示窗口,当鼠标悬停在控件(例如按钮)上时,它将显示一个项目列表(例如),该控件将允许用户点击某个项目,然后我可以根据项目执行某些操作他们选择了.

是否有任何组件可能已经这样做了?或者我最好只创建一个无边框表单并处理显示/隐藏自己的鼠标事件?

谢谢

贾森

delphi components tooltip

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

为什么Delphi编译器看不到我试图释放一个接口?

我在本周末的编码时犯了一个小错误.
在下面的代码中,我正在创建一个对象并将其强制转换为接口.后来,我试图释放它FreeAndNil();

type
  IMyIntf = interface
     [...]
  end;

  TMyClass = class(TInterfacedObject, IMyIntf)
     [...]
  end;

var
  Myintf : IMyIntf;
begin
  Myintf := TMyClass.Create;
  [...] // Some process
  FreeAndNil(Myintf); // CRASH !!!
end;
Run Code Online (Sandbox Code Playgroud)

当然,程序崩溃在这一行.我完全理解这个问题,但我不明白为什么编译器不会警告我这个问题?没有动态的东西背后,只是我正在尝试释放界面!为什么不给我写错误/警告?

是否有任何真正的解释或仅仅是编译器限制?

delphi crash free interface delphi-xe

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

如何使用TJvAppXMLFileStorage将Delphi TObjectList <TMyClass>类型序列化为XML?

以前,为了保存某些应用程序的设置,我使用了:

  • A TSettings = class(TPersistent)为容器
  • 要在已发布的属性中序列化的每个数据
  • 对象列表是TCollectionTCollectionItem类型
  • 使用单行保存所有内容的TJvAppXMLFileStorage组件:

    JvAppXMLFileStorage.WritePersistent(...);

但是现在,我正在使用TObjectList作为TSettings类中的属性.
所以我放弃了TCollection/TCollectionItem以支持泛型 ...
当序列化时,没有项目列表 ......我认为这是因为TObjectList不是来自TPersistent.

如何使用TJvAppXMLFileStorage序列化我的TObjectList <>

xml delphi serialization xml-serialization jedi

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

使用超过屏幕长度的情节提要将内容放入滚动视图

如何在故事板中使UIScrollview足够大,以便可以向其中添加所有需要的内容?我要添加的内容量在垂直方向上比iPhone屏幕长,但是情节提要不会让我将滚动视图与视图控制器分离,因此我可以垂直扩展它并添加所有需要的内容。

如何在情节提要中垂直扩展滚动视图,以便可以将需要添加的所有内容添加到其中?

改写:我想使用界面构建器在滚动视图中放置很多东西,界面构建器iPhone矩形不允许我在虚拟屏幕末端下方添加事物,我使用的是滚动视图,因为我需要添加事物低于常规iPhone屏幕的底部。例如,在Android开发中,当您在layout.xml中的滚动视图上用完垂直空间时,滚动视图会变长,因此您可以添加更多内容,有没有办法在情节提要中做类似的事情?

objective-c uiscrollview ios

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

在 TChromium(Chromium 嵌入式)中使用打印为 PDF 文件?

在带有 TChromium (DCEF3) 的 Delphi XE7/XE8 中,我需要以编程方式将当前网页打印(即保存)到 PDF 文档文件(可选地无需用户交互)到预定义的本地路径。目前,我只能通过使用自定义 PDF 打印机驱动程序并以编程方式打开打印机对话框来间接执行此操作:

procedure TMainForm.btnPrintToPDF(Sender: TObject);
begin
  // open the printer dialog:
  crm.Browser.Host.Print;
end;
Run Code Online (Sandbox Code Playgroud)

然而,这有两个缺点:

  1. 我不能假设最终用户安装了 PDF 打印机驱动程序
  2. 最终用户必须在文件对话框中选择文件路径,而文件路径应该是预定义的。

但Chrome有一个内置的PDF打印机驱动程序和打印预览,可以通过键盘快捷键CTRL+P显示。但是,当我在guiclient TChromium 演示应用程序中按 CTRL+P 时,什么也没有发生,也没有像 Chrome 中那样显示打印预览。

那么如何在 TChromium 中调用 PDF 打印预览,并可能使用预设输出路径(不显示文件对话框)?

delphi pdf-generation chromium-embedded delphi-xe8

5
推荐指数
0
解决办法
1910
查看次数