| |
VB.NET - Ein- und Umsteigerwelches Steuerelement ist am besten | | | Autor: Manuela | Datum: 10.09.10 07:42 |
| Guten Morgen
Ich hätte eine Frage. Ich möchte eine Reihe von Bildern einlesen (die zahl variiert immer) und sie dann Horizontal scrollen können. Also wie einen Filmstreifen so auf die Art. Welches Steuerelement ist dafür am besten geeignet? Übrigens die Bilder sollen 200x200 in der Vorschau dargestellt werden. Habe es mit einer Listbox versucht aber die bekomme ich nicht dazu das Einträge Horizontal dargestellt werden.
Hoffe ihr könnt mir helfen.
Grüße Manuela | |
Re: welches Steuerelement ist am besten | | | Autor: DotNetErbse | Datum: 10.09.10 08:05 |
| Panel in Verbindung mit Pictureboxen
Du musst beim "Füllen" des Panels die Pictureboxen jeweils positionieren
Am besten, Du baust Dir dazu ein eigenes Usercontrol, bei dem Du
- das Verzeichnis angibst
und Dir die interne Logic
- die Pictureboxen erzeugt,
- die Grafik lädt,
- die Pictureboxen positioniert
und beim disposen
- die Pictureboxen disposest (wichtig)
Mit freundlichen Gr??en
DotNetErbse
[Es hei?t Paket und nicht Packet, auch wenn Standard augenscheinlich von Standar(t)e kommt,hei?t es dennoch Standar(d)] | |
Re: welches Steuerelement ist am besten | | | Autor: Manuela | Datum: 10.09.10 08:59 |
| Danke. Aber mit Panel und Pictureboxen habe ich es schon versucht. Dabei verwischen sich die Pictureboxen immer wenn ich schnell scrolle.
Was meinst du mit Dispotest?
So hatte ich es
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles Button2.Click
For i = 1 To 50
Dim ptb As New PictureBox
ptb.Size = New Size(120, 80)
ptb.Location = New Drawing.Point(i * 122, 1)
ptb.SizeMode = PictureBoxSizeMode.StretchImage
ptb.Image = OpenImage("D:\Eigene Dateien\Eigene Bilder\Spike" & _
"Neu\DSC00239.JPG")
Bildlaufleiste.Controls.Add(ptb)
Next i
End Sub
Public Function OpenImage(ByVal FileName As String) As Image
Dim sr As New System.IO.StreamReader(FileName)
Try
Return (Image.FromStream(sr.BaseStream))
Catch ex As Exception
MsgBox(ex.ToString)
Finally
If Not sr Is Nothing Then
sr.Close()
sr = Nothing
End If
End Try
End Function wobei Bildlaufleiste das Panel ist. Und es Momentan nur mit dem gleichen Bild gefüllt wird.
Grüße Manuela
Beitrag wurde zuletzt am 10.09.10 um 09:03:21 editiert. | |
Re: welches Steuerelement ist am besten | | | Autor: DotNetErbse | Datum: 10.09.10 09:03 |
| hab Dir ein Projektdownload per Mail geschickt...
Mit freundlichen Gr??en
DotNetErbse
[Es hei?t Paket und nicht Packet, auch wenn Standard augenscheinlich von Standar(t)e kommt,hei?t es dennoch Standar(d)] | |
Re: welches Steuerelement ist am besten | | | Autor: Maas | Datum: 10.09.10 09:03 |
| Vielleicht interessiert es dich (oder auch andere), hier wäre eine Lösung für WPF.
<ListBox Name="lstItems" Margin="12" >
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal" IsItemsHost="True" />
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
<ListBox.ItemTemplate>
<DataTemplate>
<Image Width="40" Height="40" Source="{Binding}" _
Margin="15,0" />
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox> Private Sub Window1_Loaded(ByVal sender As System.Object, ByVal e As _
System.Windows.RoutedEventArgs) Handles MyBase.Loaded
Dim dir As New IO.DirectoryInfo("p:\ath")
Dim files = dir.GetFiles("*.png", IO.SearchOption.TopDirectoryOnly)
lstItems.ItemsSource = From f In files Select New BitmapImage(New Uri( _
f.FullName))
End Sub Maas
Beitrag wurde zuletzt am 10.09.10 um 09:04:39 editiert. | |
Re: welches Steuerelement ist am besten | | | Autor: Manuela | Datum: 10.09.10 10:59 |
| Danke für die Tipps und schnelle Hilfe.
Funktioniert genial. | |
Re: welches Steuerelement ist am besten | | | Autor: DotNetErbse | Datum: 10.09.10 11:57 |
| Ich hab für sowas ne eigene exPicturebox (inherits Picturebox),
die beim ImageLoad automatisch ein Thumbnail erzeugt und anzeigt,
wenn die Originalgrafik größer ist, als ein eingestellter Schwellwert.
Ein Boolean "IsThumbnail" sagt mir dann, ob die PB ein Original ist, oder nicht.
In einem weiteren Property habe ich den Pfad zur Datei und kann bei Bedarf über ein GetImage auf die Originaldatei zugreifen, wobei ich auch da nicht wissen muss, ob das ein Thumbnail ist, oder nicht.
Oder eine Funktion zur Bilddrehung. Es ist einfacher das (geladene) Bild in der Picturebox zu drehen, als die Originaldatei, oder auch eine Thumbnaildatei. Bei Scans oft hilfreich.
So ist alles schön gekapselt und im Programm muss ich mich darum nicht kümmern...
Ich sag nur Laden - fertig!
Mit freundlichen Gr??en
DotNetErbse
[Es hei?t Paket und nicht Packet, auch wenn Standard augenscheinlich von Standar(t)e kommt,hei?t es dennoch Standar(d)] | |
| Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
sevISDN 1.0
Überwachung aller eingehender Anrufe!
Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Weitere InfosTipp des Monats sevGraph (VB/VBA)
Grafische Auswertungen
Präsentieren Sie Ihre Daten mit wenig Aufwand in grafischer Form. sevGraph unterstützt hierbei Balken-, Linien- und Stapel-Diagramme (Stacked Bars), sowie 2D- und 3D-Tortendiagramme und arbeitet vollständig datenbankunabhängig! Weitere Infos
|
|
|
Copyright ©2000-2024 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|