Gépelés saját kódból

A System.Windows.Forms névtérben van egy nagyon poén osztály: a SendKeys. Ennek segítségével billentyűleütéseket küldhetünk ki saját programból. Kiküldésre én a SendWait metódust használom. Ennek egy string a bemenete, melyet “begépel”. Az egyetlen kaland, ha speciális karakter vagy karakterek gépelését szeretnénk elvégeztetni: ilyenek a +, ^, %, ~ és () jelek. Ezeket { } közé kell tenni. Emiatt persze a { és a } kiírása is {{}-re és {}}-re bonyolódik.

Még ha nem is a leghatékonyabban, de az alábbi metódussal meg lehet valósítani a fent elmondott karaktercseréket:

    public static string ReplaceSpecialCharacters( string text )
    {
        return text.Replace( "{", "{{}" )
            .Replace( "}", "{}}" )
            .Replace( "{{{}}", "{{}" )
            .Replace( "(", "{(}" )
            .Replace( ")", "{)}" )
            .Replace( "+", "{+}" )
            .Replace( "^", "{^}" )
            .Replace( "%", "{%}" )
            .Replace( "~", "{~}" )
            .Replace( "~", "{~}" );
    }

A fent felsorolt karakterek nem véletlenül speciálisak: a + jel a SHIFT billentyűt, a ^ jel a CTRL-t, a % pedig az ALT gombot jelenti. Lehetőség van továbbá például a CAPSLOCK vagy a BACKSPACE szimulált leütésére is a {CAPSLOCK} illetve a {BACKSPACE} segítségével, és így tovább.



Dávid Zoltán

Dávid Zoltán Mérnök Informatikusként végeztem a BME-n, jelenleg webfejlesztéssel és gépi tanulással foglalkozom.

2009.06.11. 12:45:19 | Permalink | Hozzászólások: 0 | Tárgyszavak: ,


  • SharePoint szerszámosláda - 2. rész

    Balássy György (MS RD, ASP.NET MVP, MCTS) Január végén összegyűjtöttem egy listát a SharePointos fejlesztésekhez jól használható eszközökről, azóta azonban ismét sok mindenbe futottam bele, így ideje kiegészíteni a korábbi sort. Tovább »
  • Letölthető lesz a .NET Framework forráskódja

    Balássy György (MS RD, ASP.NET MVP, MCTS) Nagyon kellemes érzés tud lenni, amikor az ember mások előtt kap meg információkat, de ugyanakkor nagyon bosszantó is tud lenni, hogy az NDA miatt nem mondhatja el senkinek :( Az szintén bosszantó, ha arra kell várni, hogy valaki más hivatalosan lelője a poént, mint ahogy történt most is Scott Guthrie blogjában :( Tovább »


Írja meg Ön is véleményét!


Hozzászólásokat csak regisztrált, bejelentkezett felhasználóktól tudunk elfogadni!

Hozzászólások