Strona: [  << <   1   > >>  ]  z  1     
Autor Temat: Jak rozszerzać listę Combo w trakcie działania programu?
Tamgo




Typ: neutral
Postów: 129
Zarejestrowany: Aug 2004
Jak rozszerzać listę Combo w trakcie działania programu?

Nie wiem, czy w zrozumiały sposób pytam. Chciałbym mieć możliwość rozszerzania zawartości listy ComboBoxa w skompilowanym już programie. Podejrzewam, że trzeba zbudować tablicę z możliwością dopisywania do niej kolejnych elementów. Ponieważ jestem jeszcze mało zorientowany i czasem się gubię - prawdę powiedziawszy temat tablic jest moją piętą achilesową, prosze o pomoc. W założeniu docelowo wystarczyłaby mi tablica 20-to elementowa. Problem tkwi w tym, że chcę aby użytkownik mógł zdefiniować własne elementy. Po prostu część elementów będzie stała, natomiast część dodawana selektywnie wg upodobań indywidualnych użytkownika.
Jednocześnie chciałbym móc przypisać tak dopisanemu elementowi kilka wartości, które będą użyte do obliczeń. Zatem wartości niejako towarzyszące dopisanym elemntom również muszą być zapisane "gdzieś" w programie.Zilustruję to przykładem:
Mam Combo z markami samochodów. Wewnątrz programu są już przypisane  wartości tym markom, które są w zawartości Combo. Wartościami do obliczeń są zawsze; prędkość, waga i moc silnika. Ale chcę jeszcze dopisać jakieś np: Porsche. Jak to wykonać? Technicznie to niby wiem,    Combo + 3 Tex-y, ale rozpisać to....o matko i córko - nie mam zielonego pojęcia. Może wogóle nic nie wiem.

pozdrawiam Tamgo

03-11-2004 23:09
Pokaż profil Tamgo  Wyślij email do Tamgo        4484571
kicaj




Typ: neutral
Postów: 271
Zarejestrowany: Aug 2003

Private Type Auto
Nazwa As String
predkosc As Integer
waga As Integer
moc As Integer
End Type

Dim samochody() As Auto

Private Sub Combo1_Click()
Text1.Text = samochody(Combo1.ListIndex).Nazwa
Text2.Text = samochody(Combo1.ListIndex).predkosc
Text3.Text = samochody(Combo1.ListIndex).moc
Text4.Text = samochody(Combo1.ListIndex).waga
End Sub

Private Sub Command1_Click()
samochody(UBound(samochody)).Nazwa = Text1.Text
samochody(UBound(samochody)).predkosc = Int(Text2.Text)
samochody(UBound(samochody)).moc = Int(Text3.Text)
samochody(UBound(samochody)).waga = Int(Text4.Text)
ReDim Preserve samochody(UBound(samochody) + 1)
Combo1.AddItem Text1.Text
End Sub

Private Sub Form_Load()
ReDim samochody(0)
'... wczytanie samochodow np. z pliku tekstowego lub binarnego
'  ReDim samochody(UBound(samochody) + 1)
' index zawsze wiekszy o jeden
End Sub


' o cos takiego Ci chodzi
' potrzebne jest combo, 4x Textbox i 1x commandbutton

04-11-2004 00:20
Pokaż profil kicaj  Wyślij email do kicaj        3914568
Wszystkich odpowiedzi: 1 :: Maxymalnie na stronę: 20
Strona: [  << <   1   > >>  ]  z  1