Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Harry222

Alter Hase

Beiträge: 864

Beruf: Student

  • Private Nachricht senden

11

10.08.2010, 16:23

Ich glaube den Fehler, den BurningWave meint ist, das in dem einen Bild der Hintergrund der der Leiste so blau ist. Also wie es sein sollte!
In dem anderen Bild hingegen ist der Hintergrund grau und das ist eigentlich falsch!

MFG Harry222

MCP

Alter Hase

Beiträge: 513

Wohnort: Paderborn

Beruf: Software-Entwickler

  • Private Nachricht senden

12

10.08.2010, 16:26

Ah, das ist mir bisher entgangen, es geht nicht um die Menü-Items, sonder um die Menüleiste, die sich ändert wenn man die Enabled-Eigenschaft von Menü-Items ändert.
Ok, das ist wirklich ein Problem (zu dem ich spontan auch keine Lösung habe).
Manchmal kann eine genaue Fehlerbeschreibung wunder wirken. ;)

Harry222

Alter Hase

Beiträge: 864

Beruf: Student

  • Private Nachricht senden

13

10.08.2010, 16:29

Ja, ich glaube genau das meint er!
Eine genaue Fehlerbeschreibung oder ob irgendwelche Fehler aufgetreten sind? Wäre wirklich nicht schlecht zu wissen! ;)

MFG Harry222

MCP

Alter Hase

Beiträge: 513

Wohnort: Paderborn

Beruf: Software-Entwickler

  • Private Nachricht senden

14

10.08.2010, 16:32

Und am Besten noch ein Code Snippet von der entsprechenden Stelle... ^^
Das macht es viel leichter eventuelle Fehler zu finden und eine Problemlösung anzubieten.

Harry222

Alter Hase

Beiträge: 864

Beruf: Student

  • Private Nachricht senden

15

10.08.2010, 16:35

Da gebe ich dir Recht! :thumbsup:

MFG Harry222

CBenni::O

1x Contest-Sieger

Beiträge: 1 145

Wohnort: Stuttgart

  • Private Nachricht senden

16

10.08.2010, 17:31

Villeicht mal mit dem Debugger prüfen, wie die enabled-eigenschaften der Menüleisten-Elemente verändert wird, evtl könnte man dann mit einem workaround herangehen..

EDIT: ich habe es jetzt mit dem (uralten) Borland C++ Builder 6 ausprobiert, und es tut problemlos... Schein eine Versionsspezifische Sache zu sein, evtl. sogar OS?
Kannst du uns mal ein kleines Programm zuschicken, das den Fehler reproduziert?
Borland Studio geupdated? Ansonsten mal die Entwickler anschreiben...

mfg CBenni::O
Ein Mitglied der VEGeiCoUndGraSonMaWiGeS Bewegung.
42!
Aufräumen kann jeder, nur das Genie überblickt das Chaos!
Metal will never die!
1. Sppro Gamecontest - mein Beitrag

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »CBenni::O« (10.08.2010, 17:40)


BurningWave

Alter Hase

  • »BurningWave« ist der Autor dieses Themas

Beiträge: 1 106

Wohnort: Filderstadt/Konstanz

Beruf: Student

  • Private Nachricht senden

17

10.08.2010, 20:18

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;
}
//---------------------------------------------------------------------------
»BurningWave« hat folgende Datei angehängt:
  • Project1.zip (263,84 kB - 51 mal heruntergeladen - zuletzt: 10.05.2024, 11:08)

BurningWave

Alter Hase

  • »BurningWave« ist der Autor dieses Themas

Beiträge: 1 106

Wohnort: Filderstadt/Konstanz

Beruf: Student

  • Private Nachricht senden

18

10.08.2010, 22:39

Solved :D

Ich habe einfach eine kleine Funktion geschrieben, die ich immer Aufrufe, nachdem ich im Menü etwas verändert habe.

Hier der Code, falls es jemand interessiert.

C-/C++-Quelltext

1
2
3
4
5
6
7
void TSDIAppForm::UpdateMainMenu()
{
    MainMenu1->Images = NULL;
    MainMenu1->Items->Find("&Datei")->Enabled = false;
    MainMenu1->Items->Find("&Datei")->Enabled = true;
    MainMenu1->Images = ImageList1;
}

Harry222

Alter Hase

Beiträge: 864

Beruf: Student

  • Private Nachricht senden

19

11.08.2010, 15:29

Heißt das, dass die Sache sich erledigt hat :?:

MFG Harry222

BurningWave

Alter Hase

  • »BurningWave« ist der Autor dieses Themas

Beiträge: 1 106

Wohnort: Filderstadt/Konstanz

Beruf: Student

  • Private Nachricht senden

20

11.08.2010, 16:24

Heißt das, dass die Sache sich erledigt hat


Ja das heißt es. Es liegt wohl am alten Compiler, der eben mit Windows 7 nicht ganz zurecht kommt, was das Aussehen der Steuerelemente betrifft

Werbeanzeige