ickebins1989 Geschrieben 12. Mai 2009 Geschrieben 12. Mai 2009 Moin. Ich hab ein Problem. Und zwar hab ich eine Picturebox, in der das entsprechende Bundesland angezeigt werden soll. Ich hab insgesamt 16 Symbole, mit verschiedenen Wappen. Nun meine Frage. Wie kann ich das entsprechende Bild der Picturebox anpassen, welches ich gerade benötige? Ich komm einfach nicht drauf... Zitieren
Gateway_man Geschrieben 16. Mai 2009 Geschrieben 16. Mai 2009 (bearbeitet) hm dann such dir n event schreib dann folgendes rein: PictureBox1.ImageLocation = "Pfad des Bildes" und wenn das event eintritt wird das bild welches als pfad festgelegt wurde geladen. lg simon PS: ist allerdings nicht die beste möglichkeit da dies recht langsam von statten geht. Bearbeitet 16. Mai 2009 von Gateway_man Zitieren
Pointerman Geschrieben 17. Mai 2009 Geschrieben 17. Mai 2009 Moin! Nimm Dir doch eine ImageList, die Du Dir beim Starten des Programms einmal mit den Bildern füllst. Später kannst Du dann einfach mit myPictureBox.Image = myImageList.Images[pictureIndex]; das passende Bild mit guter Geschwindigkeit zuweisen. Zitieren
ickebins1989 Geschrieben 18. Mai 2009 Autor Geschrieben 18. Mai 2009 (bearbeitet) Danke für den Tipp. Hab mir jetzt ne ImageList erstellt und diese an ein Label gebunden. Jedoch die Bilder, die ich mir damit anzeigen lasse, sind viel zu klein. Die könnte ich schon als Icon nehmen, also viel zu klein. Gibt´s einen Befehl oder eine Eigenschaft, mit der man die Größe ändern kann? Mit Image Size, verschwimmen die Bilder und werden total unscharf. Bearbeitet 18. Mai 2009 von ickebins1989 Zitieren
Kati82 Geschrieben 18. Mai 2009 Geschrieben 18. Mai 2009 Du kannst bei der ImageList ein ImageSize angeben (Pixelgröße). Ob man bei den enthaltenen Images selbst noch die Größe ändern muss, weiß ich jetzt nicht. Musst du einfach mal ausprobieren. Ok hab grad dein Edit gelesen. Wie groß ist denn die Bildgröße im Allgemeinen bei deinen Bildern? Zitieren
Pointerman Geschrieben 18. Mai 2009 Geschrieben 18. Mai 2009 Jetzt waere wa nuetzlich zu wissen, welche Groesse die Bilder haben... Hast Du denn bei der Picturebox die Groesse auf Autosize stehen, oder hast Du nur eine kleine Picturebox auf Dein Formulargeklickt, die jetzt Deine Bildgroesse beschraenkt? Zitieren
ickebins1989 Geschrieben 18. Mai 2009 Autor Geschrieben 18. Mai 2009 Ich hab keine Picturebox mehr. Ich hab die ImageList auf ein Label gezogen. Wenn ich die Eigenschaft autosize = true stelle, dann zeigt´s mir ganix an. Steht also auf false. Die Bilder werden auch nicht vom Label begrenzt, von der Größe. Die Bilder sind...Moment *nachschau* 43 * 52 (B*H) Zitieren
Kati82 Geschrieben 18. Mai 2009 Geschrieben 18. Mai 2009 Und wenn du wieder die PictureBox verwendest, ist da das gleiche Problem? Zitieren
Pointerman Geschrieben 18. Mai 2009 Geschrieben 18. Mai 2009 Also, wenn die Bilder nur so klein sind, ist es ja auch eigentlich kein Wunder, wenn sie vergroessert so schlecht aussehen. Warum verwendest Du denn jetzt ein Label statt der Picturebox? Die Picturebox besitzt auf jeden Fall die Properties Size und SizeMode. Beim SizeMode kannst Du dann StretchImage waehlen, solltest hier aber auf das Seitenverhaeltnis achten. Zitieren
ickebins1989 Geschrieben 18. Mai 2009 Autor Geschrieben 18. Mai 2009 Bei der Picturebox hab ich das Problem, dass ich nicht weiß, wie ich da die ImageList reinbekomme... Bin noch ein Anfänger, merkt man sicherlich Zitieren
Kati82 Geschrieben 18. Mai 2009 Geschrieben 18. Mai 2009 PictureBox.Image = ImageList.Images[0]; (Hatte Pointerman auch schon geschrieben) Zitieren
ickebins1989 Geschrieben 18. Mai 2009 Autor Geschrieben 18. Mai 2009 (bearbeitet) Danke. Das Bild ist immer noch zu klein. Vergrößern bringt´s auch nicht wirklich. Edit: Zeigt mir dann auch nur 1 Bild an. Wenn ich den Index veränderne, bleibt nur das eine Bild, von RLP. Bearbeitet 18. Mai 2009 von ickebins1989 Zitieren
Kati82 Geschrieben 18. Mai 2009 Geschrieben 18. Mai 2009 Meinst du Vergrößern im Visual Studio? Wenn ja, dann probier mal ein anderes größeres Bild. Zitieren
ickebins1989 Geschrieben 18. Mai 2009 Autor Geschrieben 18. Mai 2009 Ja, ich meine Vergrößern, über die Eigenschaften. Bringt nüschts. Hab das Bild nicht in Groß da. Wird auch schwierig eins zu bekommen Ich hab in der ImageList 16 Bilder. Die sind alle Gleichgroß. Mit dem Index [ ] geb ich doch dann die Nummer an, welches Bild ich öffnen möchte oder? In der ImageList sind automatisch Nummer geschrieben worden 0,1,2,3,....16 ?! Zitieren
Kati82 Geschrieben 18. Mai 2009 Geschrieben 18. Mai 2009 Ja das mit dem Index ist richtig. Allerdings musst du darauf achten, dass du bei 0 anfängst zu zählen. Also gehts nur bis 15 (bei 16 Bundesländern). Oder zählst du Malle als 17. Bundesland dazu :floet:? Hast du denn kein anderes Bild auf deinem Rechner? Ich meine, es ist ja nur zu Testzwecken. Wie Pointerman schon beschrieben hat, wird es an der (realen) Größe der Bilder liegen. Wäre also besser wenn du die Bilder in einem Bildverarbeitungsprogramm größentechnisch etwas modifizierst. (Ansonsten kannst du doch bestimmt von irgendeiner Seite deine Wappen oder etwas anderes nochmal runterladen, allerdings mit etwas mehr Pixeln ) Zitieren
ickebins1989 Geschrieben 18. Mai 2009 Autor Geschrieben 18. Mai 2009 (bearbeitet) Schön, dann hab ich das mit dem Index schonmal richtig verstanden. Ja klar, ich hab gesehen, dass es bei 0 anfängt zu zählen. Zu Malle: Naja manche würden das wohl tun Ne Spaß bei Seite, ich lad gleich mal noch ein anderes Bild rein. Aber das Problem, welches ich habe, ist immer noch, dass ich keine anderen Bilder anzeigen lassen kann, obwohl ich den Index geändert habe. Aber warum? Das leuchtet mir nicht ganz ein?! Edit: Vielleicht hab ich den Code einfach an der falschen Stelle platziert? private void frmAbout_Load(object sender, EventArgs e) { PictureBox1.Image = ImageList1.Images[14]; }[/PHP] Stimmt wohl so nicht, oder? PS: Danke für die Gedult, die Ihr für mich aufbringt Bearbeitet 18. Mai 2009 von ickebins1989 Zitieren
Kati82 Geschrieben 18. Mai 2009 Geschrieben 18. Mai 2009 (bearbeitet) Naja, das Load-Event wird nur ein einziges Mal aufgerufen, nämlich dann, wenn das Form startet, lädt oder wie auch immer man das jetzt nennen möchte. So wie du es jetzt geschrieben hast, würde immer nur das 14. Bild in der ImageList erscheinen. Wenn bei jedem Start des Fensters ein anderes Bild da sein soll, musst du irgendeine Variable übergeben, die den Index enthält. Oder du nimmst ne ComboBox und je nachdem was ausgewählt ist, wird das Bild geändert. Ich weiß ja jetzt nicht, was du genau vor hast. Bearbeitet 18. Mai 2009 von Kati82 Zitieren
ickebins1989 Geschrieben 18. Mai 2009 Autor Geschrieben 18. Mai 2009 Also, ich versuch´s Dir mal zu erläutern Ich möchte später das Bild angezeigt bekommen, bzw. das Wappen, das zum Bundesland gehört. Das Bundesland soll später bei der Installation ausgewählt werden. Ein wenig verstanden? Das Bild soll also nicht variieren, sonder festgelegt angezeigt werden. Wenn ich jetzt jedoch mal zum Test den Index ändere, wird kein anderes Bild angezeigt, sondern nur das von Rheinland-Pfalz.:confused: Zitieren
Kati82 Geschrieben 18. Mai 2009 Geschrieben 18. Mai 2009 Hmm, kann ich mir jetzt eigentlich nicht vorstellen, dass das so ist. Ich nehme mal an, dass du schon alle Bilder in deine Imagelist übernommen hast. Die Bilder selber, wo sind die denn gespeichert? Im gleichen Pfad wie, dein Sourcecode auch? Zumindest funktioniert es so bei mir. Vielleicht schaust du mal bei Debuggen an die Stelle, wo du der PictureBox das Bild zuordnest. Schau dort mal nach, ob in der ImageList was steht (bei ImageList->images->count steht die anzahl der bilder in der Imagelist) Zitieren
ickebins1989 Geschrieben 18. Mai 2009 Autor Geschrieben 18. Mai 2009 Also, wenn ich das mit einem Label mache, funktioniert es...Ich geb den anderen Index an, dann wird auch das andere Bild angezeigt. Bin mir nur noch nicht sicher, wie ich das automatisiere, aber wird schon. Aber das mit der PictureBox ist mir ein Rätsel... Zitieren
Kati82 Geschrieben 18. Mai 2009 Geschrieben 18. Mai 2009 Mir ist das auch ein Rätsel. Habe die Vermutung, dass nur ein Bild in der ImageList ist. Bei mir funktioniert es ja. Wenn du das später automatisierst, würde ich das so machen (Achtung: ist vielleicht auch nicht die professionellste Lösung - bin fortgeschrittener Anfänger ): Bei der Installation musst du dir das Bundesland bzw. den entsprechenden Index merken. Den Index speicherst du dir in ein ini-File oder irgendein anderes File. Dieses liest du dann aus, wenn du dein Form lädst. So kannst du später das Bundesland gegebenenfalls noch ändern. Zitieren
ickebins1989 Geschrieben 18. Mai 2009 Autor Geschrieben 18. Mai 2009 Hört sich für mich nach Bahnhof an Nein, ich habe alle Images in der Liste, die ich möchte. Mehr wie 1 Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.