ReM wrote: > Sveiki, > > Paprastutė klavišo paspaudimo procedūra. Reikia, kad paspaudus "a", > ištrintų prieš tai esantį simbolį. > Tikėjausi, kad taip nutrins, tačiau nutrina būtent simbolį "a". > > procedure TForm1.Memo1KeyPress(Sender: TObject; var Key: Char); > begin > if Key='a' then > begin > keybd_event(VK_BACK, 0, 0, 0); > keybd_event(VK_BACK, 0, KEYEVENTF_KEYUP, 0); > end; > end; > > Kaip padaryt, kad nutrintų prieš kursorių esantį simbolį? "a" irgi turi > pasirodyt. > Kažkaip tu darai pro kitą galą. Nesuprantu ko tu nori, todėl pateikiu pavyzduką tam, ko tu prašai, bet aš spėju, kad tu darai kažką iš visiškai kitos pusės. procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char); var vText: string; vSelPos: integer; begin if key = 'a' then begin vText := Edit1.Text; vSelPos := Edit1.SelStart; Delete(vText, vSelPos, 1); Edit1.Text := vText; Edit1.SelStart := vSelPos; end; end; beje - vSelPos reikės skaičiuoti kitaip, jeigu tekstas bus pažymėtas. Tada reikės ir vText skaičiuot kitaip :)