小编Tom*_*Tom的帖子

计算TLabel所需的大小

好的,这是问题所在.我在面板中有一个标签组件.标签对齐为alClient并启用了wordwrap.文本可以从一行到几行不等.我想重新调整面板(和标签)的高度以适应所有文本.

当我知道面板的文字和宽度时,如何获得标签所需的高度?

delphi

19
推荐指数
3
解决办法
1万
查看次数

在Delphi中绕过循环引用

有没有办法在Delphi中绕过循环单元引用?

也许是更新版本的delphi或某些魔法黑客或其他东西?

我的delphi项目有10万多行代码,主要基于单例类.我需要重构这个,但这意味着几个月的"循环引用"地狱:)

delphi circular-reference

15
推荐指数
4
解决办法
1万
查看次数

jQuery检查属性是否包含substring

这是我的问题:考虑以下html:

<div id="item1" class="green_large">
<div id="item2" class="green_large">
<div id="item2" class="green_small">
<div id="item4" class="yellow_large">
<div id="item5" class="yellow_large">
Run Code Online (Sandbox Code Playgroud)

如何检查$(this)是否包含带有子串"yellow"的类名,例如使用jQuery?

$("div").click(function() {

    if ($(this).contains_the_class_with_the_substring_yellow?) {
        // do something
    }
}
Run Code Online (Sandbox Code Playgroud)

jquery

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

检测用户是否使用了后退按钮

我的网页在加载页面时运行javascript函数.但是,如果用户使用后退按钮返回此页面,我不希望该功能运行.如何使用javascript来防止这种情况?

$(document).ready(function(){
  // Do not run this function if the user has arrived here using the back button  
  RefreshThePage();
});
Run Code Online (Sandbox Code Playgroud)

javascript back-button

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

关于网站架构的任何好书(不是UI设计)?

我正在开发一个网站(像许多其他网站一样)使用一堆不同的工具,如php,xml,xsl,json,jquery,css等.

我正在寻找可以提供有关如何更有效地使用这些工具的提示的资源/书籍.最佳实践,提示和技巧以及那些东西.例如,如何构造文件,何时使用json而不是xml/xsl,ajax或没有ajax和那种东西.幸运的是,我不必担心UI设计.

有谁知道任何有关此问题的好书/资源?

architecture web-applications

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

我应该担心javascript支持吗?

我开发了一个支持Ajax的网站.但是,如果没有javascript,该网站目前无法运行.该网站适用于我测试过的任何浏览器以及iPhone /诺基亚手机.

但是,我还应该担心javascript支持吗?

我知道有些技术可以使我的网站无论是否使用javascript,但重构需要一些时间.

编辑:此应用程序面向将使用系统填写和处理表单的客户.专业用途.

javascript

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

TidHttpServer(Delphi XE2)可以处理urlencoded字符吗?

我有一个TidHttpServer使用以下代码监听端口8844:

procedure TForm1.IdHTTPServer1CommandGet(AContext: TIdContext;
  ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo);
begin
  if ARequestInfo.Document <> '/favicon.ico' then
  begin
    Memo1.Text := ARequestInfo.Params.Text;
  end;
end;
Run Code Online (Sandbox Code Playgroud)

这是使用Delphi XE2编译的.当我浏览

http://localhost:8844/document?Value=%F6   <-- %F6 is the encoded value for ö
Run Code Online (Sandbox Code Playgroud)

......我得到了结果:

value=?
Run Code Online (Sandbox Code Playgroud)

如果我使用Delphi 2007编译应用程序,我会得到以下结果

value=ö
Run Code Online (Sandbox Code Playgroud)

这是Indy中的一个我错过了什么的错误吗?

delphi indy delphi-xe2

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

隐式链接与Delphi中DLL的显式链接

使用显式链接时,我无法使用dll工作.使用隐式链接可以正常工作.有人会给我一个解决方案吗?:)不,开个玩笑,这是我的代码:

这段代码工作正常:

function CountChars(_s: Pchar): integer; StdCall; external 'sample_dll.dll';

procedure TForm1.Button1Click(Sender: TObject);
begin   
  ShowMessage(IntToStr(CountChars('Hello world')));
end;
Run Code Online (Sandbox Code Playgroud)

此代码不起作用(我得到访问冲突):

procedure TForm1.Button1Click(Sender: TObject);
var
  LibHandle: HMODULE;
  CountChars: function(_s: PChar): integer;
begin

  LibHandle := LoadLibrary('sample_dll.dll');
  ShowMessage(IntToStr(CountChars('Hello world'))); // Access violation
  FreeLibrary(LibHandle);
end;
Run Code Online (Sandbox Code Playgroud)

这是DLL代码:

library sample_dll;

uses
  FastMM4, FastMM4Messages, SysUtils, Classes;

{$R *.res}

function CountChars(_s: PChar): integer; stdcall;
begin
  Result := Length(_s);
end;

exports
  CountChars;

begin  
end.
Run Code Online (Sandbox Code Playgroud)

delphi dll

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