Πίνακας περιεχομένων:

Προγραμματισμός σε VB6: Συμβουλές και κόλπα: 3 βήματα
Προγραμματισμός σε VB6: Συμβουλές και κόλπα: 3 βήματα

Βίντεο: Προγραμματισμός σε VB6: Συμβουλές και κόλπα: 3 βήματα

Βίντεο: Προγραμματισμός σε VB6: Συμβουλές και κόλπα: 3 βήματα
Βίντεο: υπολογιστες για αρχαριους 1 φάκελοι 2024, Ιούλιος
Anonim
Προγραμματισμός σε VB6: Συμβουλές και κόλπα
Προγραμματισμός σε VB6: Συμβουλές και κόλπα

Προγραμματίζω στον ελεύθερο χρόνο μου και είμαι αρκετά έμπειρος προγραμματιστής που χρησιμοποιεί το VB6. Είναι εύκολο και δεν έχω βρει ακόμα ό, τι χρειάζομαι για να επιτύχω, αλλά δεν μπορεί, αν και μερικές φορές μπορεί να είναι επίπονο να ολοκληρώσεις το έργο σου. Στην πορεία βρήκα τόσα πολλά ενοχλητικά πράγματα κυρίως με τον τρόπο που μετράει ορισμένα πράγματα. Ορίστε λοιπόν μια συλλογή από μερικά πράγματα που έμαθα στην πορεία. Σας παροτρύνω αν έχετε κάποιο πρόβλημα να σχολιάσετε και θα προσπαθήσω να σας βοηθήσω με περισσότερα βήματα.

Βήμα 1: Χορδές

Χορδές
Χορδές

Ο τρόπος με τον οποίο η VB ασχολείται με συμβολοσειρές είναι συγκεχυμένος μερικές φορές. Texta = "abcdefg" βάλε "σύμβολα και στις δύο πλευρές του κειμένου που θέλετε να θεωρηθούν ως συμβολοσειρά μηδενικές συμβολοσειρές έναρξης ξεκινούν από 1textb = mid (texta, 2, 2) αυτό κάνει τη μεταβλητή textb = "bc" textb = mid (texta, 4, 4) αυτό κάνει τη μεταβλητή textb = "defg" textb = mid (texta, 4, 5) αυτό καθιστά τη μεταβλητή textb = "defg" Αυτό είναι σωστό εάν το κείμενο που προσπαθείτε να επιλέξετε είναι μεγαλύτερο από το διαθέσιμο κείμενο που τελειώνει στον τελευταίο χαρακτήρα ανάλογα με το πρόγραμμά σας, θα πρέπει να τοποθετήσετε παγίδες για να αποφύγετε σφάλματα. Αυτό είναι μια τέτοια παγίδα: textb = mid (texta, 4, 5) αν len (textb) <5 τότε το 'Len () επιστρέφει το μήκος μιας συμβολοσειράς το <σημαίνει λιγότερο τότε msbbox "το κείμενο είναι πολύ σύντομο"' Εμφανίζει ένα πλαίσιο μηνυμάτων με το stringexit sub 'Αυτό βγαίνει από το sub στο οποίο βρίσκεστε. τελειώνει ο κώδικας. εάν βρίσκεστε σε μια συνάρτηση τότε θα θέλατε τη λειτουργία εξόδου και αν εντοπίσετε τη θέση ενός χαρακτήρα σε μια συμβολοσειρά, χρησιμοποιήστε το εργαλείο (Έναρξη, Stri ng1, String2) texta = "abcdefg" textb = instr (1, texta, "c") 'αυτό βρίσκει το γράμμα c στη συμβολοσειρά textatextb τώρα ισούται με 3 ένα ενοχλητικόόπως θέλετε "abcdefg" να είναι "defgabc" texta = "abcdefg" textb = mid (texta, 4, 4) & mid (texta, 1, 3) Αυτό δεν ήταν πολύ κακό, αλλά τώρα αφήνουμε να προσθέσουμε τα όργανα () συναρτήσειςαν θέλετε να αναδιοργανώσετε μια συμβολοσειρά σε έναν χαρακτήρα κουρτίνας, αλλά δεν είναι το ίδιο σημείο)) γ ") + 1 επειδή το όργανο μετράει τον χαρακτήρα που ψάχνετε, οπότε επιστρέφετε έναν χαρακτήρα, ώστε το mid () να πάρει τον χαρακτήρα που αναζητάτε ως πρώτο στο stringtextc τώρα ισούται με" cdefgab "textd = mid (textb, instr (1, textb, "c"), len (textb) - instr (1, textb, "c") + 1) & mid (textb, 1, instrument (1, textb, "c") - 1) textd τώρα equa ls "cgfabde" ας προσπαθήσουμε να βρούμε έναν χαρακτήρα που δεν βρίσκεται στο stringtexta = "abcdefg" textc = mid (texta, instr (1, texta, "h"), len (texta) - instrument (1, texta, "h") + 1) & mid (texta, 1, instrument (1, texta, "h") - 1) λαμβάνετε ένα σφάλμα επειδή το μέρος έναρξης του Mid () δεν μπορεί = 0 αφού οι συμβολοσειρές ξεκινούν από 1, οπότε πρέπει να αποφύγετε το χρόνο εκτέλεσης λάθος. αυτός είναι ένας τρόπος για να το κάνετε, "h") + 1) & mid (texta, 1, instrument (1, texta, "h") - 1) else 'only one other statement per if situatsmsgbox "Cannot find character in string"' δείχνει ένα πλαίσιο μηνυμάτων με το stringend ifThis συνοψίζει σχεδόν όλα όσα πρέπει να γνωρίζετε για τις χορδές

Βήμα 2: Μετατροπή χαρακτήρων

Μετατροπή χαρακτήρων
Μετατροπή χαρακτήρων

HEX: Ένα που βρήκα νωρίτερα αυτήν την εβδομάδα έχει να κάνει με τη συνάρτηση Hex (αριθμός) το μήκος στον αριθμό δεν έχει σημασία. Επιστρέφει μια συμβολοσειρά στο hexhex (11111111) επιστρέφει "A98AC7" κατά τη μετατροπή ενός χαρακτήρα ascii σε εξάγωνο που θα κάνατε dotexta = "a" hex (asc (texta)) επιστρέφει "61" texta = "k" hex (asc (texta)) επιστρέφει "6B" η συμβολοσειρά θα είναι 2 χαρακτήρες για τους περισσότερους από τους χαρακτήρες ASCI εκτός εάν είναι κάτω από μια τιμή 16 τότε επιστρέφει μόνο 1 χαρακτήρααν θέλετε όλοι να είναι 2 χαρακτήρες θα κάνατε τα εξής: textb = hex (asc (texta)) if len (textb) = 1 thentextb = "0" και textb 'δηλαδή μηδέν όχι a κεφαλαιακή οντ αν

Βήμα 3: Επεξεργασία αρχείων

Επεξεργασία αρχείων
Επεξεργασία αρχείων

για να ανοίξετε ένα αρχείο χρειάζεστε ένα δωρεάν αρχείο και ένα αρχείο αρχείου = FreeFile 'Το gfile είναι τώρα το επόμενο διαθέσιμο freefilec = "c: / test.txt", τότε υπάρχουν οι 4 τρόποι με τους οποίους μπορείτε να ανοίξετε ένα αρχείοInput - Μπορείτε μόνο να διαβάσετε Έξοδος - Μπορείτε να γράψετε μόνο και θα διαγράψει το αρχείο εάν υπάρχει. επιστροφή μεταφοράς και τροφοδοσία γραμμών με τους τελευταίους χαρακτήρεςΠροσθήκη - Μπορείτε να γράψετε μόνο. θα προστεθεί στο υπάρχον αρχείο. επιστροφή μεταφοράς και τροφοδοσία τελευταίων χαρακτήρωνBinary - Διαβάστε και γράψτε. πολύ ακριβές. το μόνο που χρησιμοποιώ τώρα. για τη δημιουργία αρχείων καταγραφής και μια τέτοια χρήση, θα προσθέσει τη νέα καταχώρηση στο τέλος του αρχείου. για πιο πολύπλοκα αρχεία καταγραφής, φορτώστε ολόκληρο το αρχείο σε μια μεταβλητή και προσθέστε τη νέα καταχώρηση στην αρχή του το αρχείο.dim stro ως συμβολοσειρά «αυτό είναι απαραίτητο ή θα υπάρξει σφάλμα σφάλματος = FreeFilec =" c: / test.txt "άνοιγμα c για δυαδικό ως #gfile 'θυμηθείτε ότι το gfile είναι ένας αριθμοςtro = διάστημα $ (lof (gfile)) 'Όταν ανοίγετε για δυαδικό αρχείο πρέπει να πείτε πόσο μεγάλο είναι το μήκος του κειμένου που θέλετε να λάβετε lof (gfile) θα επιστρέψει το μήκος του gfile και το διάστημα $ () επιστρέφει μια σειρά διαστημάτων το μήκος του αριθμού που εισάγετε #gfile, 1, stro 'πάρει από τον αριθμό αρχείου, ξεκινώντας byte, μεταβλητή για να το αποθηκεύσετε. Και φορτώνει μόνο το μήκος της μεταβλητής ακολουθούμενο από το αρχικό textopen c για δυαδικά ως #ffilekill cput #ffile, 1, stro 'put αντικαθιστά προηγούμενες πληροφορίες εάν το αρχείο γίνεται μικρότερο θα πρέπει πρώτα να σκοτώσετε το αρχείο που διαγράφει το κλείσιμο #ffilethe το αρχείο έχει τώρα "Νέα γραμμή" σε ένα πράγμα Βρήκα με τη συνάρτηση τοποθέτησης είναι ότι έχει σφάλματα αν προσπαθήσετε να βάλετε έναν χαρακτήρα όπως το έκανε να προσθέσει εξάγωνο 0x08000100000001 το οποίο είναι τρομακτικά περίεργο. Το έλυσα φορτώνοντας το αρχείο σε μια μεταβλητή και κάνοντας string modsi = 133stro = mid (stro, 1, i - 1) & chr (1) & mid (stro, i + 1, len (stro) - i) και στη συνέχεια #ffile, 1, ο στρόθις δούλεψε τέλεια

Συνιστάται: