Ohjelmien venyttäminen on tärkeä asia etenkin käyttäjille, jotka eivät puhu vieraita kieliä. Melko usein Delphi-ohjelman käyttäjät ihmettelevät kuinka venyttää sitä.
Ohjeet
Vaihe 1
Asia on, että OEM- ja ANSI-koodaukset (joissa Delphi toimii) eivät täsmää. Heillä on erilaiset kyrilliset symbolit. ANSI: lla on myös aksenttimerkkejä, joita OEM ei. Mutta toinen sisältää näennäisgrafiikkasymboleja, jotka ovat välttämättömiä taulukoiden esittämiseksi, vaikka tämä ei ole kovin kysyttyä. Silti on syytä huomata, että nämä taulukot ovat yleensä vaihdettavissa - niillä on samat mahdollisuudet näyttää tekstitietoja.
Vaihe 2
Venyttämisen ongelma voidaan ratkaista monella tapaa. Ensimmäinen työskentelee OEM-editorissa. Voit aluksi valmistaa ohjelmatekstin osat, jotka ovat kriittisiä kooditaulukolle, editorissa, joka toimii OEM-koodauksessa. Melko yksinkertainen, mutta samalla tehokas ratkaisu. Tämä pätee erityisesti paikallisten apuohjelmien kirjoittamiseen, joissa tiedon tuottamista kuitenkin vaaditaan.
Vaihe 3
Mitä tulee tämän menetelmän puutteisiin, tässä voit nimetä työn, joka on monille tutun IDE: n ulkopuolella, kelloineen ja pilleineen, jotka ovat suuria elämässä, kuten koodaus, kokoaminen, virheenkorjaus. Ja kaikki tämä sanotaan "yhdessä pullossa". Lisäksi projektin kasvaessa tietyt vaikeudet alkavat ilmetä, kun ANSI-koodauksella luotuja kolmannen osapuolen merkkijonoresursseja alkaa käyttää.
Vaihe 4
Jos projekti ei sisällä suoraan koodiin sisältyviä merkkijonoja (koodattu), voit siirtää kaikki merkkijonoresurssit erillisiin moduuleihin ja lokalisoida ne sitten tarvittavaan koodaukseen. Onneksi verkko on täynnä apuohjelmia, jotka muuttavat tiedostojen koodausta.
Vaihe 5
Nyt suodatusmenetelmien käytöstä. Windows-sovellusliittymä sisältää toimintoja, joiden avulla voit muuntaa ANSI- ja OEM-koodaukset keskenään. Nämä ovat OemToChar ja CharToOem. Niitä käytetään tekstin näyttämiseen korvaamalla fragmentit Writeln ('teksti'); seuraaviin osiin:
menettely MyWriteln (const S: merkkijono);
var
NewStr: merkkijono;
alkaa
SetLengtn (NewStr, pituus (S));
CharToOem (PChar (S), PChar (NewStr));
Writeln (NewStr);
loppu;
MyWriteln ('teksti');
Vaihe 6
Tämän menetelmän haittojen osalta on mahdotonta käyttää laajennettua Write-syntaksia ja sekoittaa sovellusteksti kutsu suodattaa -toimintoihin. Kun joudut venyttämään valmiin sovelluksen, jossa on useita kirjoituspyyntöjä, siitä tulee vakava ongelma.
Vaihe 7
Viimeisenä mutta ei vähäisimpänä, vaihda konsolikoodisivua Windows-sovellusliittymän avulla. Tämä menetelmä on muuten dokumentoitu. Ainoa saalis on, että ominaisuus ei toimi Windows 95: ssä ja 98: ssa. Vaikka sovellus toimii yksinomaan Windows NT: ssä, voit tässä tapauksessa käyttää SetConsoleOutputCP-toimintoa (866).