Innehållsförteckning:
Video: Programmering i VB6: Tips och tricks: 3 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:48
Jag programmerar på fritiden och är en ganska skicklig programmerare som använder VB6. Det är lätt och jag har ännu inte hittat något jag behöver för att åstadkomma det som det inte kan, men ibland kan det vara svårt att utföra din uppgift. Längs vägen hittade jag så många irriterande saker mestadels hur det räknar vissa saker. Så här är en sammanställning av några saker jag lärde mig under vägen. Jag uppmanar dig om du har några problem att kommentera och jag ska försöka hjälpa till med fler steg.
Steg 1: Strängar
Sättet som VB hanterar strängar är ibland förvirrande. Texta = "abcdefg" put "-symboler på båda sidor av texten som du vill ska räknas som en stringMid (String, Start, Length) väljer en textdel från en stringin strängar det finns ingen noll startsträngar börjar vid 1textb = mid (texta, 2, 2) detta gör variabeln textb = "bc" textb = mid (texta, 4, 4) detta gör variabeln textb = "defg" textb = mid (texta, 4, 5) detta gör variabeln textb = "defg" Det stämmer om texten du försöker markera är längre än den tillgängliga texten den slutar med det sista tecknet beroende på ditt program måste du placera fällor för att undvika fel. Detta är en sådan fälla: textb = mid (texta, 4, 5) om len (textb) <5 då 'Len () returnerar längden på en sträng betyder <mindre dan msgbox "texten är för kort" "Visar en meddelanderuta med stringexit sub 'Detta avslutar suben du befinner dig i. avslutar koden. om du är i en funktion så skulle du sätta exit functionend iffinding the place of a character in a stringwe use instr (Start, Stri ng1, String2) texta = "abcdefg" textb = instr (1, texta, "c") 'detta hittar bokstaven c i strängtextatextb är nu lika med 3NOTE: Instr returnerar 0 (noll) om den inte hittar tecknet REORGANIZING: detta är en irriterande säger att du vill att "abcdefg" ska vara "defgabc" texta = "abcdefg" textb = mid (texta, 4, 4) & mid (texta, 1, 3) Det var inte så illa men nu kan vi lägga till i instr () funktioner säger att du vill omorganisera en sträng vid ett gardintecken men det är inte samma plats everytimetexta = "abcdefg" textb = "gfabdec" textc = mid (texta, instr (1, texta, "c"), len (texta) - instr (1, texta, "c") + 1) & mid (texta, 1, instr (1, texta, "c") - 1) notera delen len (texta) - instr (1, texta, " c ") + 1 eftersom instr räknar tecknet du letar efter så du går tillbaka ett tecken så att mitten () tar tecknet du letar efter som det första i stringtextc nu är lika med" cdefgab "textd = mid (textb, instr (1, textb, "c"), len (textb) - instr (1, textb, "c") + 1) & mid (textb, 1, instr (1, textb, "c") - 1) textd nu ekv ls "cgfabde" kan försöka hitta ett tecken som inte finns i stringtexta = "abcdefg" textc = mid (texta, instr (1, texta, "h"), len (texta) - instr (1, texta, "h") + 1) & mid (texta, 1, instr (1, texta, "h") - 1) du får ett fel eftersom startdelen av Mid () inte kan = 0 eftersom strängar börjar vid 1 så du måste undvika körning fel. detta är ett sätt att göra ittexta = "abcdefg" if instr (1, texta, "h") 0 thentextc = mid (texta, instr (1, texta, "h"), len (texta) - instr (1, texta, "h") + 1) & mid (texta, 1, instr (1, texta, "h") - 1) else 'bara ett annat uttalande per if situationmsgbox "Kan inte hitta tecken i sträng"' visar en meddelanderuta med stringend ifThis summerar i stort sett allt du behöver veta om strängar
Steg 2: Konvertera tecken
HEX: En som jag hittade tidigare i veckan har att göra med Hex (tal) -funktionen, längden på siffran spelar ingen roll. Den returnerar en sträng i hexhex (11111111) returnerar "A98AC7" när du konverterar ett ascii -tecken till hex du skulle dotexta = "a" hex (asc (texta)) returnerar "61" texta = "k" hex (asc (texta)) returnerar "6B" strängen kommer att vara 2 tecken för de flesta ASCI -tecknen såvida de inte är under värdet 16 då returnerar den bara 1 tecken om du vill att alla ska vara 2 tecken du skulle göra enligt följande: textb = hex (asc (texta)) om len (textb) = 1 thentextb = "0" och textb 'som är en nolla inte en kapital oend om
Steg 3: Filredigering
för att öppna en fil behöver du en freefile och en filnamnfile = FreeFile 'gfile är nu nästa tillgängliga freefilec = "c: / test.txt" så finns det de fyra sätten du kan öppna en fileInput - Du kan bara läsa. Utmatning - Du kan bara skriva och filen raderas om den finns. vagnretur och radmatning sista tecken Lägg till - Du kan bara skriva. det kommer att lägga till den befintliga filen. vagnretur och radmatning sista teckenBinär - Läs och skriv. mycket exakt. den enda jag använder nu. för att bygga loggfiler och den här användningen lägger till den kommer att lägga till den nya posten i slutet av filen. för mer komplexa loggfiler ladda hela filen till en variabel och lägga till den nya posten i början av filen.dim stro som sträng 'detta är nödvändigt eller det kommer att finnas en errorgfile = FreeFilec = "c: / test.txt" öppen c för binär som #gfile' kom ihåg att gfile är en nummerstro = space $ (lof (gfile)) 'när du öppnar för binär måste du berätta hur stor längden på texten du vill ta är lof (gfile) kommer att returnera längden på gfile och mellanslag $ () returnerar en sträng med mellanslag längden på det nummer du anger #gfile, 1, stro 'get från filnummer, startbyte, variabel för att spara det till. och laddar bara längden på variabeln stäng #gfilestro nu är lika med filen test.txt.you kan lägga information till en fil byffile = FreeFilestro = "Ny rad" & VbCrLf & stro 'lägger till "Ny rad" och carraige retur och linefeed följt av den ursprungliga textopen c för binär som #ffilekill cput #ffile, 1, stro 'put skriver över tidigare information om filen blir mindre bör du döda filen först vilket raderar denclose #ffilethe filen har nu "Ny rad" i en sak Jag hittade med put -funktionen är att det har fel om du försöker sätta ett tecken likeput #ffile, 133, chr (1) 'detta ersätter tecknet vid byte 133 med tecken 1 eller hex 0x01Jag hittade när jag gjorde detta med ett program I gjorde det faktiskt lagt till hex 0x08000100000001 vilket är sjukt konstigt. Jag löste detta genom att ladda filen till en variabel och göra sträng modsi = 133stro = mid (stro, 1, i - 1) & chr (1) & mid (stro, i + 1, len (stro) - i) och lägg sedan #ffile, 1, strothis fungerade perfekt
Rekommenderad:
Hur man behärskar lödning (tips och tricks): 4 steg
Hur man behärskar lödning (lödtips och tricks): Hej killar! Jag hoppas att du redan njöt av min tidigare instruerbara " Arduino MIDI Controller DIY " och du är redo för en ny, som vanligt gör jag en inlärningsinstruktion som visar dig hur man gör några coola elektronikgrejer och pratar om
Tips och tricks för elektronik: 6 steg (med bilder)
Tips och tricks för elektronik: I denna instruktionsbok har jag sammanställt en lista med tips och tricks som jag önskar att jag visste när jag började. Varje " steg " är en annan kategori, och varje numrerad artikel är ett tips eller knep. Den fetstilade rubriken i varje objekt är en sammanfattning
My Tiny Whoop: a Whoop Recept + några tips och tricks: 8 steg
My Tiny Whoop: a Whoop Recept + några tips och tricks: VARNING: Du går nu in på min första Instructable, och du kan stöta på mycket dumhet och brist på planering och/eller skicklighet. Var medveten. Detta är min personliga Tiny Whoop -installation som jag använder varje dag, så jag tänkte att jag skulle dela den. Det är resevänligt (nej
SPELA OCH LADDA UPP IPOD ANVÄNDNING AV GAMMEL BOOMBOX - Tips och tips: 5 steg (med bilder)
SPELA OCH LADDA UPP IPOD ANVÄNDNING AV GAMMEL BOOMBOX - Tips och tips: Betrakta detta som ett tillägg till andra iPod boombox -mods. Jag erkänner att jag lånat från andra instruktioner. För att inte ta ifrån dessa instruktioner, här är ett " rop ut " till dem som inspirerade mig att dyka in i min egen mod. Tack. Instruktivt
Spela in ljud för videor och animationer: några snabba tips och tricks: 8 steg
Spela in ljud för videor och animationer: några snabba tips och tricks: Om du är en blivande artist, eller bara ett barn som gillar att ibland göra animationer för YouTube, kan du ha ett par problem med att spela in ljudet. visuellt bra kan en video eller animering vara, om de som tittar på den kan