Kazalo:

Programiranje v VB6: Nasveti in triki: 3 koraki
Programiranje v VB6: Nasveti in triki: 3 koraki

Video: Programiranje v VB6: Nasveti in triki: 3 koraki

Video: Programiranje v VB6: Nasveti in triki: 3 koraki
Video: 5. 3. 2021 Razvijanje digitalnih kompetenc učencev v OŠ 2024, November
Anonim
Programiranje v VB6: Nasveti in zvijače
Programiranje v VB6: Nasveti in zvijače

Programiram v prostem času in sem precej spreten programer, ki uporablja VB6. Preprosto je in še nisem našel ničesar, kar bi potreboval, da bi dosegel, česar pa ne more, čeprav je včasih lahko težko izvesti vašo nalogo. Na poti sem našel toliko nadležnih stvari, predvsem tako, da šteje določene stvari. Torej, tukaj je zbirka nekaterih stvari, ki sem se jih naučil na poti. Pozivam vas, če imate težave, komentirajte in poskušal bom pomagati z več koraki.

1. korak: Strune

Strune
Strune

Način, kako se VB ukvarja z nizi, je včasih zmeden.texta = "abcdefg" dajte "simbole na obeh straneh besedila, ki jih želite šteti kot niz. Srednji (niz, začetek, dolžina) izbere del besedila iz nizov nizov. ničelni začetni nizi se začnejo pri 1textb = mid (texta, 2, 2), zaradi česar je spremenljivka textb = "bc" textb = mid (texta, 4, 4), zaradi česar je spremenljivka textb = "defg" textb = mid (texta, 4, 5) s tem je spremenljivka textb = "defg" Tako je, če je besedilo, ki ga poskušate izbrati, daljše od razpoložljivega besedila, ki se konča pri zadnjem znaku, odvisno od programa, boste morali postaviti pasti, da se izognete napakam. je takšna past: textb = mid (texta, 4, 5) če je len (textb) <5 potem 'Len () vrne dolžino niza <pomeni manj thenmsgbox "besedilo je prekratko"' Prikaže polje s sporočilom z stringexit sub 'To zapušča podrejenost, v kateri ste. končajte kodo. če ste v funkciji, postavite funkcijo izhoda in odklenite mesto znaka v nizu, ki ga uporabljamo instr (Start, Stri ng1, String2) texta = "abcdefg" textb = instr (1, texta, "c") 'to najde črko c v nizu textatextb je zdaj enako 3 OPOMBA: Instr vrne 0 (nič), če ne najde znaka REORGANIZING: to je nadležni pravijo, da želite, da je "abcdefg" "defgabc" texta = "abcdefg" textb = mid (texta, 4, 4) & mid (texta, 1, 3) To ni bilo slabo, zdaj pa lahko dodamo instr () funkcije, če želite preurediti niz na znak zavese, vendar to ni vedno isto mestotexta = "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) upoštevaj del len (texta) - instr (1, texta, " c ") + 1, ker instr šteje znak, ki ga iščete, zato se vrnite za en znak, tako da sredina () vzame znak, ki ga iščete, kot prvega v nizu texttextc, ki je zdaj enak" cdefgab "textd = mid (textb, instr (1, textb, "c"), len (textb) - instr (1, textb, "c") + 1) & mid (textb, 1, instr (1, textb, "c") - 1) textd zdaj equa ls "cgfabde" poskuša najti znak, ki ni v stringtexta = "abcdefg" textc = mid (texta, instr (1, texta, "h"), len (texta) - instr (1, texta, "h") + 1) & mid (texta, 1, instr (1, texta, "h") - 1) dobite napako, ker začetni del Mid () ne more = 0, ker se nizi začnejo pri 1, zato se morate izogibati času izvajanja napaka. to je en način, da to naredimotexta = "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 'samo en drug stavek, če situacijomsgbox "V nizu ni mogoče najti znaka"' prikaže polje s sporočilom z stringend ifThis povzame skoraj vse, kar morate vedeti o nizih

2. korak: Pretvorba znakov

Pretvarjanje znakov
Pretvarjanje znakov

HEX: Ena, ki sem jo odkril v začetku tega tedna, je povezana s funkcijo Hex (number), dolžina številke ni pomembna. Vrne niz v šestnajstiški (11111111) vrne "A98AC7" pri pretvorbi znaka ascii v šestnajstiko, ki bi ga dotexta = "a" šestnajstiško (asc (texta)) vrne "61" texta = "k" šestnajstiško (asc (texta)) vrne "6B" niz bo 2 znaka za VEČINO znakov ASCI, razen če so pod vrednostjo 16 potem vrne samo 1 znak, če želite, da so vsi 2 znaka, kar naredite tako: textb = hex (asc (texta)), če je len (textb) = 1 thentextb = "0" in textb ', ki je nič, ne a kapital in če

Korak: Urejanje datotek

Urejanje datotek
Urejanje datotek

če želite odpreti datoteko, potrebujete brezplačno datoteko in ime datoteke gfile = FreeFile 'gfile je zdaj naslednji na voljo freefilec = "c: / test.txt", potem lahko na štiri načine odprete fileInput - lahko samo berete. Izhod - pišete lahko samo in datoteka bo izbrisana, če obstaja. vrnitev nosilca in vnos vrstice zadnji znaki Dodaj - Lahko samo pišete. bo dodana obstoječi datoteki. vrnitev nosilca in vnos vrstice zadnjih znakov Binarno - branje in pisanje. zelo natančno. edina, ki jo uporabljam zdaj. file.dim stro kot niz 'to je potrebno ali pa bo prišlo do napake gfile = FreeFilec = "c: / test.txt" odprto c za binarno datoteko kot #gfile' ne pozabite, da je gfile številostro = presledek $ (lof (gfile)) "ko odprete binarno datoteko, morate povedati, kako velika je dolžina besedila, ki ga želite vzeti, lof (gfile) bo vrnilo dolžino datoteke gfile in presledek $ () vrne niz presledkov, dolžine števila, ki ga vnesete #gfile, 1, stro 'dobite iz številke datoteke, začetnega bajta, spremenljivke, v katero jo shranite. in naloži samo dolžino spremenljivkeclose #gfilestro, ki je zdaj enaka datoteki test.txt.v datoteko lahko vnesete podatke byffile = FreeFilestro = "Nova vrstica" & VbCrLf & stro 'doda "Novo vrstico" in vrnitev vrstic in podajanje vrstic sledi izvirni textopen c za binarno datoteko, kot je #ffilekill cput #ffile, 1, stro 'put prepiše prejšnje podatke, če je datoteka manjša, morate najprej ubiti datoteko, ki jo izbriše. S funkcijo put sem ugotovil, da ima napake, če poskušate vnesti znak, kot je na primer input #ffile, 133, chr (1) 'to nadomesti znak pri bajtu 133 z znakom 1 ali šestnajstikom 0x01 Našel sem, ko sem to naredil z enim programom I je dejansko dodal šestnajstiško 0x08000100000001, kar je čudno čudno. To sem rešil tako, da sem naložil datoteko v spremenljivko in naredil niz modsi = 133stro = mid (stro, 1, i - 1) & chr (1) & mid (stro, i + 1, len (stro) - i), nato pa dal #ffile, 1, strothis je delovalo odlično

Priporočena: