对于想了解Delphi5组件会自动将“db.pas”单元添加到uses子句中吗?的读者,本文将提供新的信息,我们将详细介绍delphi组件参考大全,并且为您提供关于AngularJS1.1.5-自动将
对于想了解Delphi 5组件会自动将“db.pas”单元添加到uses子句中吗?的读者,本文将提供新的信息,我们将详细介绍delphi组件参考大全,并且为您提供关于AngularJS 1.1.5-自动将哈希标签添加到URL、Delphi 2009中的“Delphi Fundamentals”、delphi – TPanel在包含TPanel时不会自动调整大小、delphi – 为TMemo或TRichEdit组件添加intellimouse支持的有价值信息。
本文目录一览:- Delphi 5组件会自动将“db.pas”单元添加到uses子句中吗?(delphi组件参考大全)
- AngularJS 1.1.5-自动将哈希标签添加到URL
- Delphi 2009中的“Delphi Fundamentals”
- delphi – TPanel在包含TPanel时不会自动调整大小
- delphi – 为TMemo或TRichEdit组件添加intellimouse支持
Delphi 5组件会自动将“db.pas”单元添加到uses子句中吗?(delphi组件参考大全)
TMyDBEvent = procedure(Sender: TObject; DataSet: TDataSet) of object;
TDataSet在db.pas中声明,我需要手动添加此单元,我想避免.
我见过这个解决方案:
How are Delphi units automatically added when a component is added to a form?
还有这个:
Can I make a custom Delphi component add multiple units to the uses clause?
那使用RegisterSelectionEditor,但是Delphi 5(我知道……)似乎没有这个单元.
我有什么选择?
解决方法
type TDataSet = Db.TDataSet;
无论何时将组件放在表单上,Delphi都应将其单元添加到uses子句中.然后,无论你是否以该形式使用Db,都有一个与Db相当的有效TDataSet.
Could there be any side effects/implications/conflicts issues to such type aliasing?
从语言的角度来看,没有.
一般来说,当2个代码(有时甚至在同一个单元中)看起来使用相同的类型时,具有相同名称的类型会导致问题是不明智的,但它们实际上是内部不同的类型.但是,在这种情况下,类型实际上是相同的.
从IDE的角度来看,并不多.
>一个小问题是IDE中的“查找声明”需要额外的步骤才能达到基础类型.
>另一个问题与代码完成有关.我曾经历过,当这种稍微不同寻常的引用技术< unit-name>.< type-name>时,某些版本的Delphi偶尔会遇到代码完成的困难.用来. (我不记得Delphi 5是如何(或者甚至是)受到影响的.)
Are there any other kNown components that uses this trick?
我不知道使用该技术的任何组件.但是我在很多场合出于各种原因使用了混叠.主要是为了避免强制客户端单元的连锁依赖.
AngularJS 1.1.5-自动将哈希标签添加到URL
有谁知道为什么1.1.5版会自动在您的网址中添加井号,以及如何将其关闭?海事组织这看起来很丑。只要您的网址不以正斜杠结尾,它就会发生。(我没有使用路线之类的东西)。
所以这:
http://my.website.com/about
变成
http://my.website.com/about#/about
还有这个:
http://my.website.com/about.html
变成:
http://my.website.com/about.html#/about.html
但是这个:
http://my.website.com/about/
没有这个问题。
答案1
小编典典前几天,我遇到了这个问题。我通过为启用HTML5模式解决了该问题$locationProvider
。看到 $ location的文件- 更新了$
HTML5模式
location-HTML5模式的链接。
它看起来应该类似于:
.config([''$locationProvider'', function($locationProvider){ $locationProvider.html5Mode(true).hashPrefix(''!'');}]);
Delphi 2009中的“Delphi Fundamentals”
我在我的项目中使用词典(cArrays.pas,cDictionaries.pas,cStrings.pas,cTypes.pas),现在我在升级代码时遇到了一些麻烦.
如果有人能够在Delphi 2009中转换上述单位,我将非常感激.我对Delphi很新,从2007年开始工作,2009年已经发布,我只是无法帮助自己……
谢谢
解决方法
经过30分钟的搜索和替换,像疯子一样,我让他们在Delphi 2009中编译,只有几个警告要修复.
> Char>>>> AnsiChar
>字符串>>>> AnsiString
> PChar>>>> PAnsiChar
> PString>>>> PAnsiString
它通过了所有的自我测试,到目前为止似乎工作正常.我在这里分享了它:http://www.xs4all.nl/~niff/Fundamentals_UtilsD2009.zip
更新我已经将一个移植的cDataStructs.pas添加到zipfile,其中包含字典类.这个仍然有许多编译器警告,你可能想要修复,但自检通过,所以你可以尝试看看它是否适合你..
delphi – TPanel在包含TPanel时不会自动调整大小
内部面板对齐alTop:
并且外部面板设置为AutoSize = true:
一切都很大.如果我在设计时更改了内部面板的高度,外部面板会自动调整大小以适应它:
现在运行时
现在我需要change the height of the inner panel at runtime:
procedure TForm2.Button1Click(Sender: TObject); begin pnlInner.Height := pnlInner.Height + 50; lblPointer.Top := pnlOuter.Top + pnlInner.Height; end;
除非我在运行时更改内部面板的高度,否则自动调整大小的面板不会自动调整大小:
这当然适用于Delphi 5,7和probably XE2 – XE5.
有什么问题?
当然,解决方法是绕过Alignment / Autosize并在各种OnResize事件期间执行所有操作.但那显然不是RAD.我确定这是VCL中的一个小错误.而且由于我们已经修补了大约二十二个XE6 VCL错误,因此修复它会更好,所以没有其他人需要考虑它.
奖金Chatter
我喜欢这条线:
and,Could you please attach sample project?
这几乎就像没有人打算甚至试图重现它.
解决方法
procedure TWinControl.AlignControls(AControl: TControl; var Rect: TRect); begin //...snip // Apply any constraints if Showing and ((sfWidth in FScalingFlags) or (sfheight in FScalingFlags)) then DoAdjustSize; //...snip end;
这里的错误是它不会调用DoAdjustSize,除非存在sfWidth或sfheight缩放标志.
解决方法是不要试图超越自己,DoAdjustSize无论如何:
procedure TWinControl.AlignControls(AControl: TControl; var Rect: TRect); begin //...snip // Apply any constraints //QC125995: Don't look to scaling flags to decide if we should adjust size if Showing {and ((sfWidth in FScalingFlags) or (sfheight in FScalingFlags))} then DoAdjustSize; //...snip end;
找到这个修复程序后,我们解决了the similar issue except with a TOleControl (e.g. TWebBrowser
) rather than a TPanel问题.
Note: Any code released into public domain. No attribution required.
delphi – 为TMemo或TRichEdit组件添加intellimouse支持
我正在使用Delphi XE
解决方法
ScrollBars
属性设置为ssHorizontal,ssvertical或ssBoth,并将
IMouse
单元添加到项目中.
UPDATE
为避免IMouse单元导致的内存泄漏,必须在应用程序退出之前添加此代码(例如,在主单元的最终部分中).
if Assigned(Mouse.PanningWindow) then Mouse.PanningWindow := nil;
今天关于Delphi 5组件会自动将“db.pas”单元添加到uses子句中吗?和delphi组件参考大全的讲解已经结束,谢谢您的阅读,如果想了解更多关于AngularJS 1.1.5-自动将哈希标签添加到URL、Delphi 2009中的“Delphi Fundamentals”、delphi – TPanel在包含TPanel时不会自动调整大小、delphi – 为TMemo或TRichEdit组件添加intellimouse支持的相关知识,请在本站搜索。
本文标签: