Minulla on ongelmana cd-listaukseen tarkoitetussa onhjelmassa. ohjelma tallentaa levyn tiedostoon "kaikki.jsf" ja nimen ensimmäisen kirjaimen mukaan toiseen tiedostoon (esim "A.jsf"). Olen saanu lisäys ja etsi toiminnot toimimaan, mutta kuinka saan toimimaan poista ja muokkaa toiminnot. poista toiminnon tarbitsisi ottaa valittu albumi(listBox1:estä)ja poistaa tiedosto "kaikki.jsf" tiedosto niin, että muut levyt säilyvät. muokkaa toiminto pitäisi muokata vastaava tiedosto. Ohjelmassani on listbox1, johon cd-levyt listataan. Selitys ei ollut kovin hyvin onnistunut, mutta kiitos jos voit auttaa.
unohtui vielä, että albumien nimet on tallennettu riveille, yksi albumi rivillä.
Poistolla ja muokkauksella tarkoitan että ohjelma EI poista tiedostoa vain tietyn rivin(tai muokkaa sitä)(valitun albumin)!
Tarvitsen tätä yhteen projektiin... tietääkö kukaan koska tietokannoista valmistuu opas?... siitä on maininta
oppaassa 9.?
Kysymys vielä lyhyesti:
1. Kun painaa muokkaa nappia (pitää olla listBox1:stä joku valittuna) ohjelmat avaa ikkunan jossa saa kirjoittaa uuden tekstin ja korvaa vanhan uudella tiedostossa
2. Kun painaa poista nappia (pitää olla listbox1:stä joku valittuna) ohjelmat kysyy vielä, että haluatko varmasti poistaa.... Ja sitten ohjelma poistaa kyseisen rivin tiedostosta...
Siinä nyt taisi olla kaikki. Ehkä otsikko "Tiedostot muokkaus ja poisto" -ei ollut oikea. Mutta jos joku vain tietää/vitsii vastata, olisin kiitollinen.
Tää mun kysymys ei oikeen tunnu saavan muilta kun multa lisää tekstiä???
Noh... katkaistaan hyvä monologi.
Ongelmasi löytyy keskusteluista mm.
https://www.ohjelmointiputka.net/keskustelu/2992-rivien-poisto-tiedostosta
Koska tekstit on jo ladattu tekstilootaan, niin muokkauksen yhteydessä pitää vain ainaa tallentaa textboxin sisältö vanhan päälle :)
Muokkaus:
If ListBox1.ListIndex >= 0 Then ListBox1.List(ListBox1.ListIndex) = InputBox$("Kirjoita uusi tunniste",_ "Uusi nimi", ListBox1.List(TextBox1.ListIndex)) Else MsgBox("Valitse muokattava ensin.") End If
Poistossakin voidaan käyttää omia funktioita.
If ListBox1.ListIndex >= 0 Then If MsgBox("POISTA !?", MB_OKCANCEL) = IDOK Then ListBox1.RemoveItem ListBox1.ListIndex End If Else MsgBox("Valitse poistettava ensin.") End If
Muutosten jälkeen vain aina tallennat tiedoston päälle :)
Edit: typo, kirjoitin textbox kun piti kirjoittaa listbox... sattuuhan sitä.
Ne on siis LISTBOX!:ssä
Korjasin edelliseen viestiin. Sorry.
Vaikuttaa hyvältä... mut poistaako tuo myös tiedostosta kyseisen rivin... kun se qb -koodi ei oikeen sovi mulle kun osaan vb:tä
Tuo ei poista tiedostosta. Luitko aloituspuheeni? Koska tiedot on ladattu listboxiin, muokkauksen jälkeen yksinkertaisesti aina tallennat sen sisällön vanhan tiedoston päälle, jolloin muutos tulee tiedostoonkin.
Aijoo....No mut kiitos kokeilen tota kohta....
Mun ohjelmasta tietoa:
Pohja: 3 tabpagea
1.Siinä voi lisätä yhtyeen ja albumin, joka tallennetaan yhdelle riville tiedostoon. (a:lla alkavat omassa
tiedostossa, b:llä alkavat omassa tiedostossa jne...)
2.On napit joista ohjelma lataa tiedostosta valitulla alkukirjaimella alkavat.
(1 ja 2 siis TabPage1 -sivulla)
3.TabPage -sivu 2:
ListBox, 2 -Buttonia
ListBox:iin ladataan tiedostosta "kaikki.jsf" albumit
ja listbox:in yläpuolella on 2 buttonia (muokkaa ja poista)
Ja viimisellä tabpagella on etsi toiminto..toimii... ainoo on noi kaks
poista ja muokkaa, jotka heittää härän per****ä
Aihe on jo aika vanha, joten et voi enää vastata siihen.