05. oktober 2002 - 13:27Der er
11 kommentarer og 2 løsninger
Hent kode fra txt fil, er det muligt?
Jeg er er i gang med at lave et lille program, der skal kunne holde styr på hvad jeg har af film, men programmet skulle helst også være sådan indrettet at mine film (og de informationer der skal være med) ikke er hardcoded, men jeg har ikke lige nogen ide om hvordan det kan klares, da jeg har aldrig rigtigt prøvet at hente informationer via andre filer endnu...
Som programmet er opstillet nu, så er der en listbox (listen over mine film), programmet skal så kunne finde de nødvendige informationer (bånd nr, link, osv) i txt filer, baseret på hvilken film jeg har valgt...
Jeg er ikke helt sikker på hvordan det kan komme til at se ud, men jeg har en lille ide:
Når man starter programmet, kan man via en menu, vælge hvilken film-type det skal være (VHS, DVD), derefter skal den så hente listen over de film, der skal i listen, fra en tilsvarende txt fil.
Når du har oprettet den første og sæt de proporties (tekststørrelse, ramme, evt. farve o.s.v. som øvrige labels skal have så markerer du labelen og trykker CRTL+C, derpå trykker du CTRL+V. Så spørger VB om du vil oprette et kontrol-array, og det siger du OK til.
Nu kan du med CTRL+V indsætte så mange labels der skal være. De kommer til at være indekserede, altså label1(0) label1(1) label1(2) o.s.v.
Når du så læser i din txt-fil, kan du læse én linie (label) ad gangen således:
Dim var as String, a as Integer
Open dinfil.txt for Input As #1 For a=0 to 20 ' hvis du har 20 labels line input #1, var label1(a).caption = var next a Close #1
Der skal lidt errorhandling m.v. tilføjes for at sikre mod fejl.
Takker, men hvad vis man, i visse tilfælde ikke skal have noget i en linje (Som f.eks, så ønsker jeg ikke at skulle skrive noget vis filmen er optaget på SP, så jeg kun skal skrive vis filmen er optaget på LP)
Og jeg har også tænkt mig at ved en klik på en bestemt knap (Efter at have valgt film), så starter IE, og åbner filmens side på internettet...jeg ved godt hvordan man kan åbne en side via internet, men ved ikke lige hvordan man kan åbne den internet-adresse der ligger som den sidste linje (regner med at det bliver linje 5)
Du kan fx. læse din txt-fil ind i et array, og derefter udfra dine egne kriterier vælge hvilke af de enkelte poster i arrayet der skal skrives til labels. Ang indlæsning af fil til array, se mit svar på http://www.eksperten.dk/spm/262013 - bare et forslag :o)
Angående det første, så lader du blot en linie i din txt-fil være tom, altså kun indeholde linieskift (som er ascii 13 og ascii 10 - enter og linefeed - også konstanten i VB: VBCRLF.
I formens generelle del:
"ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As _ String, ByVal lpFile As String, ByVal lpParameters As String, _ ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
If ret > 32 Then MsgBox "Went på browseren og log ind." form1.WindowState = 1 Else x = MsgBox("Kunne ikke finde en standard-browser.", 48, "Ingen internet adgang.") End If
Det står måske lidt mærkeligt, er plukket fra et projekt.
Fungerer selv om standardbrowseren ikke er explorer, jeg bruger f.eks. Opera.
Det ser ud til at virke uden problemer, så er det vel tid til at lukke spørgsmålet...men hvad synes i om pointfordelingen? Skal vi bare sige 15 til jer hver? Eller hvad mener i?
Ok, jeg synes i har hjulpet mig lige godt begge to, så jeg siger tak for hjælpen :o)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.