TImage - auf Knopfdruck Bild wechseln...



  • Hallo

    Schau dir die Methoden von TImageList in der BCB-Hilfe mal genau und in Ruhe an.

    bis bald
    akari



  • Hallo,

    irgendiwe blcike ich nicht mehr ganz durch... TImage hat kein ImageIndex wo ich ein bitmap festlegen und wechseln kann.. Ich hab es bereits mit LoadFromFile probiert kommt aber folgende Fehlermeldung:

    Keine gültige Dateierweiterung (.).
    

    mfg



  • Hallo

    Ob die Methode GetBitmap wohl etwas damit zuz tun haben könnte? 🙄

    bis bald
    akari



  • Hallo,

    danke Ich hab zwei Imagelisten eine für kleine Bmp's 16x16 und die andere für Große 100x100. Bei der einen Imagelist (1, 16x16) wechselt das Bild, jedoch bei der anderen (2, 100x100) passiert überhaupt nichts, warum ??



  • Hallo,

    bzw. wechselt TImage nur zu den kleinen Bildern (16x16) aber nicht zu den großen [(100x100) Imagelist2] ...?

    mfg



  • Ohne etwas mehr Code werden wir dir da nicht viel sagen können.



  • Hallo,

    Hier der code:

    void __fastcall TForm1::FunktionGroupClick(TObject *Sender)
    {
     if(FunktionGroup->ItemIndex == 1) 
     ImageList2->GetBitmap(3, Image1->Picture->Bitmap); //Kleine Imagelist (16x16) 
    // da wechselt das Bild...
    
     if(FunktionGroup->ItemIndex == 2)
     ImageLis1->GetBitmap(3, Image1->Picture->Bitmap); //Große Imagelist (100x100)
    // da wechselt das Bild nicht...
    }
    

    Also bei der 1. Imagelist wechselt das Bild, jedoch wenn ich statt der 1. die 2. angebe bleibt das Standard bild bestehen..

    Vielleicht könnte das Problem darin bestehen, dass das Standard Bild 100x100 groß ist und die kleine Imagelist(1) max-werte von 16x16 hat und die große Imagelist(2) 100x100 ...? 😕

    mfg



  • Hallo,

    ich glaub ich habe dne Fehler gefunden..
    Und zwar verdeckt das Standardbild immer das neue Bild(Wechselbild)..
    Aber wie kann ich jetzt wenn das "Item gecheckt wurde" das StandardBild unsichtbar machen bzw. löschen, so dass das andere Bild sichtbar wird ??

    mfg



  • TImage::Visible oder dieser FAQ-Beitrag



  • Hallo,

    das Problem ist nur, das durch "Visible" die ganze Komponente unsichtbar wird und da sich beide Bilder die selbe Komponente teilen bringt das nichts... Ich brauch irgendeine Funktion, die das Standardbild unsichtbar macht bzw. löscht und das neue Bild sichtbar...

    mfg



  • Hat sich erledigt! Hab es so probiert und siehe da es funktioniert! 🙂 🙂

    if(FunktionGroup->ItemIndex == 1) {
     Image1->Picture = NULL;
     ImageList2->GetBitmap(0, Image1->Picture->Bitmap);
     }
    
     else if(FunktionGroup->ItemIndex == 2) {
     Image1->Picture = NULL;
     ImageList2->GetBitmap(1, Image1->Picture->Bitmap);
     }
    

Anmelden zum Antworten