gpt4 book ai didi

Delphi TNumberbox 返回单个;如何获得标准整数?

转载 作者:行者123 更新时间:2023-12-03 18:23:35 31 4
gpt4 key购买 nike

TNumberbox 和 TSpinEdit 返回值定义为 single 类型。我想使用这些值进行简单的整数运算,但我无法成功地将它们转换为更通用的整数类型,如果我尝试将它们用作整数,Delphi 会给我编译时错误。例如,此代码因

而失败

"E2010 Incompatible types: 'Int64' and 'Extended'":

var
sMinutes: single;
T: TDatetime;
begin
sMinutes :=Numberbox1.value;
T :=incminute(Now,sMinutes);

我在这里要做的就是让用户给我几分钟,然后相应地增加一个日期时间值。我尝试过的任何事情都无法让我以这种方式使用该单曲。

我错过了什么??

最佳答案

在使用前截断值:

var
Minutes: Integer;
T: TDateTime;
begin
Minutes := Trunc(NumberBox1.Value);
T := IncMinute(Now, Minutes);
end;

根据您的特定需求,您可能需要改用 Round。它将正确四舍五入到最接近的整数值,确保 1.999999999999 正确地变为整数 2; Trunc 会改为 1。 (感谢 Heartware 的提醒。)

var
Minutes: Integer;
T: TDateTime;
begin
Minutes := Round(NumberBox1.Value);
T := IncMinute(Now, Minutes);
end;

TruncRoundSystem单元中。

关于Delphi TNumberbox 返回单个;如何获得标准整数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9865217/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com