Új hozzászólás Aktív témák
-
T_bee
aktív tag
na. már rájöttem erre is
DE.
van egy progi, ami bekér két számot text1 és text2 vezérlőben, a és b változóba.
Private Sub Command1_Click()
If i = False And j = False Then
c = a
c = c + ''*''
c = c + b
o = a * b
index = a * b
List1.AddItem = c
q = q + o
Text3.Text = q
End If
End Sub
és ha a lista egyik elemét törlöm akkor hogy lehet annak az értékét( tehát az elem c változójának értékét) törölni egy másik Q változóból?''Az erőszak a gyengék végső menedéke'' /Isaac Asimov : Alapítvány/
-
blemidon
tag
A listboxban 5*6 stb formátumban vannak az elemek.
A következő függvény egy ilyen stringet alakít vissza az eredménnyé:
Private Function ListItemFromText(s As String) As Integer
Dim x As Integer
Dim s1 As String, s2 As String
s1 = Left(s, InStr(s, ''*'') - 1)
s2 = Right(s, InStr(s, ''*'') - 1)
ListItemFromText = Val(s1) * Val(s2)
End Function
Meghyvod az épp törölni kívánt listelemmel, és visszaadja hogy mennyi annak a számértéke, ezt már ki tdod vonni a q-ból. -
blemidon
tag
Ez nem csak arra jó. Ha jobban megnézed, ez 1 eljárás, ami a listboxod bármelyik elemének értékét adja vissza számként. Ha törölsz 1 elemet, akkor tudod hogy melyik volt az (az éppen kijelölt elemet a List1.Text függvénnyel kérdezheted le. Amit már írtam régebben hogy a kijelölt elem indexe, ugyanott lekérdezhető az értéke is ezzel) Mivel az éppen kijelöltet fogod törölni, ezt az értéket átadod ennek a függvénynek, és visszakapod a számértékét integerben.
Private Sub List1_Click()
MsgBox List1.ListIndex
MsgBox ListItemFromText(List1.Text)
End Sub
Itt simán q-ból kivonod a ListItemFromText(List1.Text)-et, és kész. Az épp az az elem ami ki van jelölve, tehát az aktuális törlendő. -
blemidon
tag
ListBox, ComboBox és MS FlexGrid első indexe 0, tehát az első elemet 0-s indexszel tedd be, ne egyessel. Nem tudsz kapásból pl 5. helyre tenni, ha nincs előtte annyi elem.
Linuxon ezek nem fognak menni, miven windowsos programok. Nem tudom, de sztem biztos van már linuxra vmilyen VB compiler, de azt sztem nem a Microsoft írta -
T_bee
aktív tag
hoppá... most olvasom és rájöttem hogy ez nem a kivonnó eljárás...
Private Sub Command4_Click()
If List1.Text <> '''' Then
If mag >= 10 And szele >= 10 Then
s1 = Left(List1.Text, InStr(List1.Text, ''x'') - 1)
s2 = Right(List1.Text, InStr(List1.Text, ''x'') - 1)
listitem = Val(s1) * Val(s2)
List1.RemoveItem List1.ListIndex
ossz = ossz - listitem
mem.Text = ossz
i = i - 1
ElseIf mag >= 10 And szele <= 10 Then
s1 = Left(List1.Text, InStr(List1.Text, ''x'') - 1)
s2 = Right(List1.Text, InStr(List1.Text, ''x'') - 2)
listitem = Val(s1) * Val(s2)
List1.RemoveItem List1.ListIndex
ossz = ossz - listitem
mem.Text = ossz
i = i - 1
ElseIf mag <= 10 And szele >= 10 Then
s1 = Left(List1.Text, InStr(List1.Text, ''x'') - 1)
s2 = Right(List1.Text, InStr(List1.Text, ''x''))
listitem = Val(s1) * Val(s2)
List1.RemoveItem List1.ListIndex
ossz = ossz - listitem
mem.Text = ossz
i = i - 1
End If
Else
d = MsgBox(''Nincs kijelölt adat!'', vbInformation, ''Hiba'')
End If
End Sub
na ez lenne az, ha valaki rájön hogy mi benne a hiba annak megköszönném.''Az erőszak a gyengék végső menedéke'' /Isaac Asimov : Alapítvány/
-
Victorius
tag
Új hozzászólás Aktív témák
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Tippmix
- BestBuy topik
- Villanyszerelés
- S.T.A.L.K.E.R.: Shadow of Chernobyl
- Senua's Saga: Hellblade II - Íme a végleges gépigény
- GoodSpeed: Windows 11 PRO FPP (Full Packaged Product) - Retail, Box, dobozos
- Politika
- exHWSW - Értünk mindenhez IS
- Autóhifi
- További aktív témák...
- EDIFIER R1700BTS hangfal pár makulátlan, új állapotban, 2 év hivatalos garanciával, alkalmi áron
- LG OLED55B23LA 2 Év GYÁRI GARANCIA
- Apple iPhone XR 128GB, Kártyafüggetlen, 1 Év Garanciával
- Gamer PC , i7 12700KF , RTX 3080 Ti , 64GB DDR5 , 960GB NVME , 1TB HDD
- Intel PC , i5 8500 , 1660 6GB , 32GB DDR4 , 512GB NVME , 500GB HDD
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: Ozeki Kft.
Város: Debrecen