Lazarus 按钮切换机制
Lazarus button toggle mechanism
我在 Lazarus 中编写了一个小工具,将其用作我的一些游戏的启动器,所有这些都是通过链接到按下按钮的 cmd 脚本完成的。
现在我正在寻找对我的工具的两个修改,但由于我在编程方面不是很有天赋,我希望有人能帮助我。
我要查找的第一件事是将 TButton
标题分成两行。我曾尝试通过 GUI 来完成此操作,但没有找到解决方案。
我想做的第二件事是通过按下按钮来更改标题和功能。例如 Button1
有标题 Enable Enhancements
,运行 是脚本 enhancements_on.bat
。按下按钮后,我希望它将标题更改为 Disable Enhancements
,以便脚本 enhancements_off.bat
将在下次按下时 运行。
这可能吗?如果是,你是怎么做到的?
我知道了。如果有人需要这样的功能,请使用切换框和以下代码:
procedure TForm1.ToggleBox1Change(Sender: TObject);
begin
if ToggleBox1.Checked then
begin
ToggleBox1.Caption:='Mods aktiviert.'
ShellExecute(0,nil, PChar('cmd'),PChar('/c "start enhancements_on.bat"'),nil,1)
end
else ToggleBox1.Caption:='Mods deaktiviert.';
ShellExecute(0,nil, PChar('cmd'),PChar('/c "start enhancements_off.bat"'),nil,1)
end;
The first thing I'm looking for is to split the TButton caption into two lines.
只需在运行时设置 Togglebox 的标题,例如在窗体的 OnCreate 事件中使用 LineEnding 来拆分行。
Togglebox1.Caption := 'Line 1' + LineEnding + 'Line 2';
请注意,这仅适用于 TTogglebox,不适用于 TButton。
我在 Lazarus 中编写了一个小工具,将其用作我的一些游戏的启动器,所有这些都是通过链接到按下按钮的 cmd 脚本完成的。
现在我正在寻找对我的工具的两个修改,但由于我在编程方面不是很有天赋,我希望有人能帮助我。
我要查找的第一件事是将 TButton
标题分成两行。我曾尝试通过 GUI 来完成此操作,但没有找到解决方案。
我想做的第二件事是通过按下按钮来更改标题和功能。例如 Button1
有标题 Enable Enhancements
,运行 是脚本 enhancements_on.bat
。按下按钮后,我希望它将标题更改为 Disable Enhancements
,以便脚本 enhancements_off.bat
将在下次按下时 运行。
这可能吗?如果是,你是怎么做到的?
我知道了。如果有人需要这样的功能,请使用切换框和以下代码:
procedure TForm1.ToggleBox1Change(Sender: TObject);
begin
if ToggleBox1.Checked then
begin
ToggleBox1.Caption:='Mods aktiviert.'
ShellExecute(0,nil, PChar('cmd'),PChar('/c "start enhancements_on.bat"'),nil,1)
end
else ToggleBox1.Caption:='Mods deaktiviert.';
ShellExecute(0,nil, PChar('cmd'),PChar('/c "start enhancements_off.bat"'),nil,1)
end;
The first thing I'm looking for is to split the TButton caption into two lines.
只需在运行时设置 Togglebox 的标题,例如在窗体的 OnCreate 事件中使用 LineEnding 来拆分行。
Togglebox1.Caption := 'Line 1' + LineEnding + 'Line 2';
请注意,这仅适用于 TTogglebox,不适用于 TButton。