小编Den*_* F.的帖子

Delphi:每个控件之间的TFlowPanel边距

我正在使用TFlowPanel,在运行时我正在创建一个可变数量的控件(在本例中为TButton).我想在每个控件之间创建一个边距,但它还没有工作.

procedure TForm1.FormCreate(Sender: TObject);
var
  i: Integer;
  LButton: TButton;
begin
  for i := 0 to 10 do
  begin
    LButton := TButton.Create(flwpnl1); // flwpnl1 is the TFlowPanel
    LButton.Parent  := flwpnl1;
    LButton.Height  := 20;
    LButton.Caption := Format('Status%d', [i]);
    LButton.Margins.Left   := 20;
    LButton.Margins.Top    := 20;
    LButton.Margins.Right  := 20;
    LButton.Margins.Bottom := 20;
  end;
end;
Run Code Online (Sandbox Code Playgroud)

例

有什么想法吗?

关心和感谢,丹尼斯

delphi controls margin flowpanel

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

delphi:在写入文本文件时替换字符串中的换行符,该字符串由 varchar2 字段(oracle)填充

我在 oracle 数据库上执行 sql 语句并将结果写入文本文件。称为“目标”(varchar2) 的字段中包含换行符。

到现在为止,我替换了这样的换行符:

function CleanText(strText : String) : String;
var
  ii: integer;
begin
  for ii := 1 to Length(strText) do
    if strText[ii] < chr(32) then strText[ii] := ' ';
  end;

  Result := strText;
end;
Run Code Online (Sandbox Code Playgroud)

但现在我想用特定的字符串替换换行符:“{\n}”。我尝试了不同的事情,例如:

strText := AnsiReplaceStr(strText, #13#10, '{\n}');
Run Code Online (Sandbox Code Playgroud)

但它不起作用。书面文本文件中没有“{\n}”。

我从 sql 语句中复制粘贴了一个示例字符串:

"1) Sicherung der Liquidität der Stadt XYZ durch:'#$A'- exakte Buchführung zur Sicherung des korrekten Ausweises der Forderungen / Verbindlichkeiten"

我可以做这样的事情(但我认为,这不是一个好的解决方案):

strText := AnsiReplaceStr(strText, '''#$A''', '{\n}');
Run Code Online (Sandbox Code Playgroud)

你有什么想法?

问候, 丹尼斯

delphi replace line-breaks

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

delphi:如何将TCustomFrame和记录存储在一个列表中

我正在使用一个TObjectList<TCustomFrame>商店TCustomFrames.现在我想TCustomFrame在同一个列表中存储更多有关的信息.一个record会很好.

德尔福类,你会更喜欢保存TCustomFrames,并records在同一个列表?

TCustomFramesrecords将在运行时添加.

delphi list record tframe

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

标签 统计

delphi ×3

controls ×1

flowpanel ×1

line-breaks ×1

list ×1

margin ×1

record ×1

replace ×1

tframe ×1