小编Pet*_*ner的帖子

如何使用Delphi制作rocketdock/OSX风格的启动栏

我想制作一个带有图标的工具栏,当你将鼠标悬停在它们上面时,这些图标会变得更大.我不介意重新发明轮子,但如果有人能提出一个好处:

  1. 图像格式(不确定位图在这里工作,不知道如何做矢量)
  2. 现有控制(付费或免费,只要我可以在一个密切的源应用程序中使用它)
  3. 容器类(TPanel是否足够?)

delphi toolbar

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

PHP类名冲突

我试图将PHP REST框架(Recess)与webapp构建框架(VCL4PHP)混合在一起,不幸的是他们喜欢将它们的类命名为相同.缓存,应用程序(可能是其他人,但我放弃了应用程序).是否有PHP中的命名空间或任何方式我可以绕过这个而不重写一个或其他框架或我SF?

php namespaces class vcl4php recess

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

在Windows 7中存储Delphi代码的位置?

我刚刚注意到我的一些新的Delphi控件安装在Windows 7的Public Documents文件夹中(TMS Smooth控件和Virtual Treeview).是否有这样的原因,这是一种约定或一些操作系统或事物的方式.

有没有一个地方可以设置我的Source控件的根目录,以便它与RAD studio和windows 7更容易集成?

delphi version-control delphi-2009 windows-7

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

是否期望Delphi 7中项目组的所有单元都在一个文件夹中?

也许这适用于其他Delphi(我只用了7).我们已经破解了我们的代码,以便我们相当庞大的应用程序中的几乎每个DLL都在不同的文件夹中.

我下载到插件到Delphi的99%的开源资源都将其所有源代码都放在一个文件夹中.

看起来这是一个假设,即Delphi的开发人员对其用户的编码实践做出了可能不明显的假设.

delphi standards packages

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

为什么我的Delphi 7调试器随机决定停止接受某些键盘输入

也许这是一个总体问题,因为我在Firefox中看到了类似的错误,我想知道如何避免编码.

由于没有明显的原因,功能键,箭头键(也是解锁的小键盘),箭头上的6个键和退格键停止工作.其他所有关键似乎都让我认为这是某种中断问题.当我重新启动Delphi时它再次起作用.

这是在IBM Model M键盘上,所以肯定它不是硬件问题,虽然如果有人知道我不会那么天真,我已经注意到这与不同的键盘.

我实际上并不感兴趣修复Delphi,我只是想知道如何避免键盘输入错误.我当然是在调试载满错误的代码.我只是想知道为什么它会导致部分键盘出现故障.

delphi keyboard madexcept

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

如何避免随机UI?

比方说,我要为我的裤子做一些编码,为企业应用添加功能.一个人可以遵循什么样的好例子/租户/基本规则来制作一个相当复杂的设置/配置屏幕看起来不像脚.

我正在寻找的是"不要把一件东西放在一个盒子里".但是如果有人知道什么样的布局最有可能实现相对数量的好看,我也会喜欢对称的一些帮助.

user-interface

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

IE是唯一需要<script> </ script>并且讨厌<script />的Web浏览器吗?

经过一个小时的狩猎和啄食之后,我觉得我可能会向世界贡献一个可怕的事实,即你的javascript无法在IE中工作的唯一原因是因为你认为你可以在它上面拉一个快速的使用你喜欢的xHTML快捷方式.

我已经阅读了dtd,我真的找不到任何IE的基础如此持久性.

internet-explorer cross-browser

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

Delphi抽象函数调用的名称不同于基类

说我有功能

function GetFieldName(FieldIndex: Integer; FieldName: PChar; 
    Len: Integer): Integer; virtual; abstract;
Run Code Online (Sandbox Code Playgroud)

而我正在尝试添加

function GetFieldNameA(FieldIndex: Integer; FieldName: PAnsiChar; 
    Len: Integer): Integer;
Run Code Online (Sandbox Code Playgroud)

这将临时桥接我的unicode数据库连接.

我想继续调用GetFieldName,使其不是抽象的,并做一些类型转换来调用GetFieldNameA,它将成为第一个GetFieldName的技术抽象版本.(我根本不想改变基类)

有没有办法,比如为外部引用添加'name'关键字,在子类中有一个不同名称的抽象函数?

我想象的最终结果是:

function GetFieldName(FieldIndex: Integer; FieldName: PChar; 
    Len: Integer): Integer; 
function GetFieldNameA(FieldIndex: Integer; FieldName: PAnsiChar;
    Len: Integer): Integer name 'GetFieldName Virtual Abstract'; 
Run Code Online (Sandbox Code Playgroud)

delphi unicode backwards-compatibility abstract

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

最受欢迎的是:AnsiString为String或String为AnsiString?

为了我的目的,我实际上真的使用ASCII字符数据(用于将ASCII文本文件提交到状态),所以只使用unicodestring将无法帮助最终结果(我仍然需要转换一些东西).

我可以选择在Delphi 2009中转换StrComp函数,该函数从将AnsiString和PAnsiChar比较为UnicodeString和PAnsiChar.

Val : PAnsiChar
Mask : TEditMask;
Run Code Online (Sandbox Code Playgroud)

....

这是我的原始代码,它并不好

StrComp(PAnsiChar(Mask.EditText), Val);
Run Code Online (Sandbox Code Playgroud)

....

所以,我可以改为:

StrComp(PAnsiChar(AnsiString(MAskEdit.EditText), Val);
Run Code Online (Sandbox Code Playgroud)

或者,我可以将其更改为此(额外转换为"清晰度"):

StrComp(PChar(MAskEdit.EditText), PChar(String(AnsiString(Val))));
Run Code Online (Sandbox Code Playgroud)

我记得Marco Cantu说,不要在循环中做其中一个,我只是不记得是哪一个或为什么.

delphi unicode delphi-2009

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

什么是Delphi XE2 VCL运行时BPL?

旧的Delphi 7,取消选中运行时包并构建所有技巧似乎不再起作用,所以我无法恢复任何适合我的Delphi项目的运行时BPL.

我有一个问题,我可能会在这里提出另一个问题和链接,我认为可以通过包含一个特定的BPL来解决VCL.CheckLst.pas.

我不只是知道这个问题的答案的原因是,当我开始一个新的VCL形成的项目,没有VCL BPLs在默认情况下,运行时包,有RTL和一些firemonkey东西和良好的老MadExcept和印地,但没有VCL那是什么处理?我的Delphi配置错误了吗?

delphi vcl delphi-xe2 runtime-packages

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