Gå til innhold
🎄🎅❄️God Jul og Godt Nyttår fra alle oss i Diskusjon.no ×

Anbefalte innlegg

Hei, lurer litt på om noen av dere mer erfarne VB brukerne ka hjelpe meg litt her:

 

saken er sånn at jeg har da laget en liten nettradio.

denne radioen har da en listbox som viser URL til noen nettradioer.

disse URLene er ikke noe spesielt pen for å si det slik :thumbdown:

så jeg lurer da enkelt å greit på hva jeg kan gjøre for å bytte URL med navnet på radiostasjonen?

Jeg har også en add funksjon som gjør at man kan legge URL til listen. hvordan da eventuelt få disse også til å vise radiostasjonen sitt navn?

 

Mvh Kaizer2x

Lenke til kommentar
Videoannonse
Annonse

Det er flere måter å gjøre det på, men hvis du ikke har så mye erfaring tror jeg det enkleste er å lage en listbox til, sette .Visible på den første til false, og gjøre slik:

 

Når du legger til en radiostasjon:

Usynlig.Items.Add(URL)

Synlig.Items.Add(Navn)

 

Å finne navnet til radiostasjonen automatisk er nok vanskelig, så det enkleste er å få brukeren til å skrive den inn:

 

Usynlig.Items.Add(URL)

Synlig.Items.Add(Inputbox("Skriv inn navnet:"))

 

Lykke til

Degeim

Lenke til kommentar

Dette hadde vært så latterlig mye enklere i VB.NET :p

Klikk for å se/fjerne innholdet nedenfor
Public Class UrlListItem
 Protected m_url As Uri
 Protected m_name As String

 Public Property Url() As Uri
Get
  Return m_url
End Get
Set(ByVal value As Uri)
  m_url = value
End Set
 End Property
 Public Property Name() As String
Get
  Return m_name
End Get
Set(ByVal value As String)
  m_name = value
End Set
 End Property

 Public Sub New(ByVal url As Uri, ByVal name As String)
m_url = url
m_name = name
 End Sub
 Public Sub New(ByCal url As String, ByVal name As String)
m_url = New System.Uri(url)
m_name = name
 End Sub

 ' Denne funksjonen forteller hva som skal stå i listboksen
 Public Overrides Function ToString() As String
Return m_name
 End Function
End Class

Public Class MyForm
 Inherits System.Windows.Forms.Form

 Protected RadioStations As System.Windows.Forms.ListBox
 Public Sub New()
RadioStations = New System.Windows.Forms.ListBox()
Controls.Add(RadioStations)

RadioStations.Items.Add(New UrlListItem("http://stream.radiotest.org", "Radio Test"))
 End Sub
End Class

Lenke til kommentar
Itemdata er datatype Long og ikke særlig egnet til å håndtere url'er. Bruk to lister du, hvis du ikke heller vil lage en radiostasjonklasse og en collection av disse.

 

Beste hilsen Harald

 

Hmm, hva var det jeg tenkte på da? Sikkert comboboxer i grid.

 

OT/EDIT: Jeg ser at standard listbox/combobox-komponentene har itemdata datatypen long, men det finnes andre komponenter som har datatype variant

Endret av hightow
Lenke til kommentar
  • 10 år senere...

...eller tar steget over i .net, i stedet for å tumle med gammel teknologi som snart ikke er støttet lenger.

 

Ja, jeg vet denne tråden er 10 år gammel, men det er litt artig at Visual Basic 6 fremdeles ligger på Topp 20-listen til Tiobe-indeksen over de mest brukte programmeringsspråkene i verden. I februar i år hadde den over 2,2 % oppslutning, som er på linje med Swift og Objective-C. Microsoft har også sagt at de vil offisielt støtte VB6-programmer i hele Windows 10s levetid. Og Windows 10 forsvinner ikke med det første :)

 

Det er faktisk imponerende at et programmeringsspråk som ikke har vært oppdatert på 18 år, og som har offisielt vært ustøttet i 10 år fremdeles lever i beste velgående. Det viser bare at MS aldri har klart å gjenskape suksessen med VB.NET/C#, selv om begge de to isolert sett er langt bedre språk enn VB6

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...