2013-09-21 39 views
2

我在使用在2010年德尔福德尔福公司和dec工作不正常?

这里是我的代码片段的公司和十二月程序麻烦:

if NOT(frmMain.Height = 0) then 
begin 
    Dec(frmMain.Height, 2); 
    Inc(frmMain.Top); 
end; 

我也得到一个:

[DCC Error] frmMain_U.pas(44): E2064 Left side cannot be assigned to 

任何想法?我有一种感觉,我可能会丢失一些愚蠢这里...

编辑:在这里程序阅读起来:

http://www.delphibasics.co.uk/RTL.asp?Name=Inc

http://www.delphibasics.co.uk/RTL.asp?Name=Dec

+3

您无法将属性传递给函数的声明'var'参数。使用'frmMain.Height:= frmMain.Height + 2;'和'frmMain.Top:= frmMain.Top + 1;'代替。 – TLama

+0

哦对。我这样做了,但试图优化,因为它变得相当重复将变量写出两次。谢谢。 – Laz

+0

不客气!不幸的是,就我所知,没有什么可以对付它。但是,您可以制作一个像“OffsetPosition”这样的方法,您可以在其中执行此操作。 – TLama

回答

8

您只能使用INC和DEC与变量。你传递的是属性,而不是变量。

+0

谢谢,我会记住将属性称为属性,而不是变量。 – Laz