Problemquelle gefunden: Wenn eine ImageList mit dem Menü verbunden ist, um kleine Icons neben den Einträgen darzustellen, passiert der Fehler, sonst nicht. Das kann man mit dem kleinen angehängten Programm gut testen: Wenn man ein Menü-Item deaktiviert, bzw. aktiviert passiert nichts, aber sobald man die ImageList zum Menü hinzugefügt hat und dann die Enabled-Eigenschaft eines Items verändert, wird das Menü falsch dargestellt. Entfernt man die Liste wieder und verändert die ENabled-Eigenschaft wieder, wird das Menü wieder richtig dargestellt. Hat jemand eine Idee, woran es liegt?
Code, der eigentlich unwichtig ist:
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
void __fastcall TForm1::B3(TObject *Sender)
{
MainMenu1->Items->Find("Bearbeiten")->Enabled = false;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::B4(TObject *Sender)
{
MainMenu1->Items->Find("Bearbeiten")->Enabled = true;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::B1(TObject *Sender)
{
MainMenu1->Images = ImageList1;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::B2(TObject *Sender)
{
MainMenu1->Images = NULL;
}
//---------------------------------------------------------------------------
|