Tanácsok azoknak, akik programozni, hogy vb-VBA

Andrei Kolesov, Olga Pavlova

Tipp 204 Hogyan kell felhívni a doboz formájában nélkül keretvezérlőjellel

DrawEdge funkció része a Win32 API lehetővé teszi, hogy elérjék nagyon érdekes hatásokat. Segítségével EDGE_ állandók megadhat különböző kerethatárok, így fog kinézni süllyesztett vagy fölé a penész. A BF_ állandók határainak definiálására a keretet, amelyet fel kell hívni (például a BF_BOTTOM akkor dolgozzon csak az alsó határ a keret):







A Form_Paint esetben adja meg az alábbi kódot, amely azt mondja, hogy szeretne felhívni egy téglalapot, amely fölé a formában:

Tanács 206. törlése az összes kijelölt elem a listában

Ha van szükség, hogy távolítsa el több terméket a listából, amely támogatja multiselect módban használja az alábbi egyszerű programot. Tegyük fel, hogy egy listát, amely öt elemből áll: 1. elem, ITEM2, ITEM3, Element4 és Element5. Tulajdonságainak beállítása multiselect ListBox vezérlő az Extended vagy Egyszerű, majd adja meg a következő kódot:

Tedd a forma egy nyomógombbal nevű „Törlés”, és írja rá az alábbiak szerint:

Most fut a program, mi megkülönböztetni három elemet (1. elem, és ITEM3 Element5), majd kattintson az „Eltávolítás” gombra. És ennyi az egész!

Tanács 207. Mi a különbség a vízszintes görgetősáv a RichTextBox kontroll

Alapértelmezésben, amikor érkezik egy eleme a RichTextBox ellenőrzés formájában, VB állítja RightMargin ingatlan 0. Ez azt jelenti, hogy a teljes szöveg a felhasználó által beírt a mezőbe. Megjelenítéséhez egy vízszintes görgetősáv szükséges, hogy az érték az ingatlan RightMargin nagyobb volt, mint a szélessége a szövegmezőbe. Ellenkező esetben, még akkor is, ha meg a gördítősáv tulajdon 1- rtfHorizontal, RichTextBox nem jelenik meg a görgetősáv.

Például, helyezze a forma RichTextBox vezérlő, amelynek a szélessége 3200. Majd állítsa RightMargin tulajdonság, mint 3300, és görgetősávok tulajdon - mindkettő 1- rtfHorizontal. Fuss a projekt végrehajtásáról és kezdjen el gépelni. Amikor eléri a határ a szövegmezőbe, VB, akkor megjelenik egy vízszintes görgetősáv.

Tanács 208. Egy új sort a szöveget egy TextBox vezérlő

Néha szükség lehet további adatok a meglévő szöveg egy többsoros TextBox vezérlő (MultiLine tulajdonság True értékre van beállítva). Tegyük fel, hogy szeretne adni egy ilyen sort: „Update:” plusz az aktuális dátumot. Használhatja a tulajdonságok és SelStart SelText. Mint azt már bizonyára tudja, SelStart tulajdonság beolvassa vagy beállítja a kiválasztás kezdetét, SelText tulajdon - aktuálisan kijelölt szöveget. Ha a szöveg nem tartalmaz elosztása, mind a tulajdonságok visszaút beszúrási pont (beszúrási pont). Ezért annak érdekében, hogy helyezzen be egy új sort a szöveg egy bekezdéses szöveg mezőbe kód használatával, mint ez:

Ez a kód mozgatja a kurzort a szöveg végére a Text1 vezérlőre, majd beilleszt egy új sort tartalmazó kiegészítő információkat.

Tanács 209. Hogyan VB 6,0 megnyitni a kód ablakban a „kiterjesztett” módban

VB 5,0 mindig menti a beállításokat az integrált fejlesztőkörnyezet (IDE), akkor meg az elmúlt ülésen. Így emlékezett, néhány ablakot szeretne - normális vagy „telepített”. Sajnos, VB 6,0 nem teszi ezt - ez mindig kinyitja az ablakot, és az Object Code normál üzemmódban. Ezt a problémát meg lehet oldani a kiadások egy kis változás a Windows Registry, hogy a IDE megnyílik az ablakban a „kiterjesztett” módban. Ezek azonban mindig kitölti a képernyőt - VB 6.0 még mindig nem tudja tárolni a beállításokat az IDE munkafolyamatok között.







Munka közben a Registry, legyen óvatos, ezért mielőtt módosítása, hogy egy biztonsági másolatot, így a rendszerleíró adatbázis visszaállításának az esetben, ha bármilyen hiba.

Tehát, hogy a VB 6.0 kinyitni az ablakot kód vagy tárgy „kiterjesztett” állapotban van, hozzá kell adni egy új értéket MDIMaximized a következő kulcsot: HKEY_CURRENT_USER / Software / Microsoft / Visual Basic / 6.0 / MDIMaximized = „1” Ehhez a Windows, kattintson a gombra Kezdés és válassza ki a Run. Írja be a regedit parancsot a Futtatás párbeszédpanelen, majd kattintson az OK gombra. Ezután a Windows megjeleníti a rendszer nyilvántartásban, amely megtalálja VB 6.0 mappát. Ezt követően, a jobb gombbal bárhol a jobb oldalon, és válaszd a New | Karakterlánc a helyi menüből. Írja MDIMaximized a nevét és nyomja meg az Entert. Most a jobb gombbal MDIMaximized elem és válassza a Módosítás parancsot a helyi menüből. Végül a Karakterlánc szerkesztése párbeszédpanelen írja be az 1 értéket, mint az új és kattintson az OK gombra. Ha nem, a Windows hozzárendeli a beírt MDIMaximized elem. Ez az! Regisztráljon most zárni és nyitni az Object Code, vagy bármelyik VB 6,0 projekteket. IDE megjeleníti az ablakban a „kiterjesztett” módban.

Ezen felül, akkor lehet, hogy egy változót típus kifejezetten, VB lehetővé teszi, hogy ezt a különleges karaktereket. Például, ahelyett, hogy a:

egyszerűen tudsz írni:

Itt a teljes lista adattípusok és a hozzájuk tartozó szimbólumok:

Azonban óvatosan kell eljárni, amikor ezeket a karaktereket, mert csökkentik az olvashatóságát a kódot.

Tanács 211. létrehozása Excel objektumot VB

A testület 197 (6'99 Computerpress, CD), beszélgettünk, hogyan lehet létrehozni egy Word objektumot VB. Most megmutatjuk, hogyan kell elvégezni ugyanezt az eljárást az Excel.

Először is, add, hogy a VB-alkalmazás kapcsolat a Microsoft Excel 8.0 Object Library (parancs Project | referenciák).

Ezután írja be a következő kódot egy példányának létrehozásához Excel:

És végül, olvassa el az Object Browser VB információt szerezni más tulajdonságok és módszerek Excel objektumot.

Tanács 212. Let DateDiff funkció feldolgozza dátumait

Itt DateDiff függvény a különbség naptári hónapban két dátum között ( „m” érv). Ha értéke 0, akkor a két dátum ugyanabban a hónapban. Annak érdekében, hogy ezt a funkciót az alkalmazás, akkor egy hasonló tervező szoftver:

Tanács 213. A sürgősségi interrupt programot a Ctrl + Pause

Amikor azt vizsgáljuk, egy programot a VB környezetet annak megszakítása vagy összeomlik lehet használni, illetve vagy End Szünet parancsot a Futtatás menüből. Azonban a munka csak abban a pillanatban várja minden külső esemény a párbeszéd formájában. Ha a program elvégzi egy kódot (például az adatfeldolgozást a ciklusban), vagy vár felhasználó kilépése után az üzenet mezőbe (Message Box), a sürgősségi megszakítja vagy befejezi azt a következő parancsokkal sikertelen lesz.

Ahhoz azonban, hogy megoldja ezt a problémát egyszerű - nyomja meg a Ctrl + Pause megszakítani a sürgősségi programot, amely azonnal lefordítani az alkalmazást szünet módban, és csak ezután használja a környezetet parancs folytatása (tovább futás) vagy End (teljes).

214. Amint azt a Tanács, hogy az elején a kijelölt szöveg

A legtöbb professzionális kereskedelmi alkalmazások kezelni párbeszédpanelek szöveget tartalmazó mezők, az alábbiak szerint. Amikor a felhasználó megy a szöveg beviteli mezőbe a Tab billentyűt, vagy a gyorsbillentyűt (Alt együtt más fontos), hogy teljesen kiválasztja az összes szöveget ezen a területen. Aztán bevezet egy új szöveget, amely felváltja a tartalmát az egész területen. Ugyanakkor, ha ez csak egy egér-kattintással szöveg beviteli mező, akkor nem allokáció nem fog megtörténni - ott csak helyezzék a hangsúlyt.

A dokumentáció VB Tudásbázis leírja, hogyan lehet ezt tenni, az API használatával funkciójú GetKeyState. Ez a technika azonban az a hátránya, olyan esetekben, amikor a szöveg hossza meghaladja a szélessége a területen. A felhasználó ezután látja, csak a végén a kijelölt szöveget, ami nem túl kényelmes, mert nem mindig lehet megállapítani, hogy mi van szó.

Használata GetKeyState funkció együtt az üzemeltető és a SendKeys eljárás TextWidth lehetővé teszi, hogy hozzon létre egy hibrid megoldás, ha a Tab billentyűt, vagy helyi kiválasztja az összes szöveget a beviteli mezőbe, de a felhasználó látja az elején a szöveget, nem a végén.

Kezdetben leírni API-funkció GetKeyState, és hozzon létre egy rutin SelectWholeText:

Ezután hozzon létre egy szubrutin hívást esetén GotFocus bármilyen szöveges mező:

Tanács 215. Hogyan kell olvasni a sorozatszámot a lemez

Microsoft Scripting Runtime könyvtár tartalmazza az új hierarchia a FileSystemObject, amely több tárgyat, amely lehetővé teszi, hogy információt kapjunk meghajtók, mappák és fájlok. Például, lehet kapni a lemez sorozatszáma ezt a kódot:

És a FreeSpace objektum meghajtó tulajdonság is ellenőrizheti, hogy van-e szabad lemezterület elég:

Erről bővebben megtalálható VB segíteni szakaszok szótár és FileSystemObject.

Board 216. Application Label vezérlő elem, mint egy elválasztó

Ahhoz, hogy hozzon létre egy alkalmazás a stílus Windows Intézőben, akkor a Label vezérlő egy elválasztó a két másik kontroll, mint a ListView és TreeView.

Első helyen a forma e három összetevő, majd adja meg a következő kódot:




Kapcsolódó cikkek