0

我又来了。我只是想了解如何使用 TColorListBox 更改矩形(形状)的颜色背景。我知道这很容易,但是我一直在尝试为 Rectangle 设置新值时遇到异常。我正在使用的命令如下:

Rectangle1->Fill->Color = ColorListBox1->Color;

功能:

void __fastcall TForm1::ColorListBox1Click(const TCustomListBox *Sender,
          const TListBoxItem *Item)
{
    Rectangle1->Fill->Color = ColorListBox1->Color;
}

现在我一直在尝试更改颜色时遇到的错误:

Access violation at address 00405628 in module 'Project1.exe'. Read of address 00000360.

调试器的另一个例外是:

First chance exception at $00405615. Exception class $C0000005 with message 'access violation at 0x00405615: read of address 0x00000360'. Process Ninterpres.exe (904)

有人可以帮我吗?从现在开始,非常感谢!

4

2 回答 2

1

你第一次写

ColorListBox1

第二次你使用没有'1'的名字

ColorListBox->Color;

但看起来你还没有初始化一些对象(因为我记得这将由表单编辑器自动完成)因此程序抛出异常。

于 2015-03-02T19:12:06.060 回答
0

我发现了问题......访问冲突代码是因为多个具有相同名称的指针。在这种情况下,我使用 Rectangle1 (实际上被称为 Transp,我将名称更改为放在这里以使理解更容易)作为 int var 和对象...感谢您的回答 XD。

于 2015-03-02T23:25:21.350 回答