Hocam teşekkür ederim.
bu kodları kullanırsam bu klavyeyi sadece tek formda kullanabilirim.
enter için verdiğiniz kodda form tanımlarını sildim çalıştı.
SendKeys "{ENTER}"
Forms!frmKeyboard.SetFocus
DoCmd.Close
ama backspace için uyguladığımda kapanıyor ve tek satır silebiliyorum.
kapanmadan her tıklamada bir geri nasıl sildirebilirim.
DoCmd.Close kaldırınca kod çalışmıyor.
SendKeys "{ENTER}"
Forms!frmKeyboard.SetFocus
DoCmd.Close
Merhaba, benim backspace için verdiğim kodda docmd.close şeklinde kod yok.
Backspacenin kodları
Dim infield As String
If IsNull(Forms(GeciciFormAdi)(GeciciKontrolAdi)) Then Exit Sub
infield = Forms(GeciciFormAdi)(GeciciKontrolAdi)
If Len(infield) = 0 Then Exit Sub
infield = Left(infield, Len(infield) - 1)
Forms(GeciciFormAdi)(GeciciKontrolAdi) = infield
hocam
bu kodda geciciform adları oduğu için sadece bir form ve metin kutusunda kullanabilirirm.benim amacım uygulamadaki tum form ve metin kutularında kullanmak.
If IsNull(Forms(GeciciFormAdi)(GeciciKontrolAdi)) Then Exit Sub
infield = Forms(GeciciFormAdi)(GeciciKontrolAdi)
If Len(infield) = 0 Then Exit Sub
infield = Left(infield, Len(infield) - 1)
Forms(GeciciFormAdi)(GeciciKontrolAdi) = infield
enter yerine backspace yazınca oluyor.ancak bir kare siliyor ve kapanıyor. DoCmd.Close yu silince çalışmıyor.
SendKeys "{backspace}"
Forms!frmKeyboard.SetFocus
DoCmd.Close
sayın zetyu,
Alıntı:Ekran klavyesi başlatılamadı uyarısı geliyor.
ifadenize yönelik olarak;
osk.exe dosyasının yolunu kontrol ediniz.bunun için,
System32 klasörü içerisinde bu dosya mevcutsa sorun olmaksızın çalışmalı.değilse,eklemelisiniz.
ayrıca;
ÇİFT TIKLANDIĞINDA olay yordamındaki kod satırını
ShellExecute 0, vbNullString, "osk.exe", vbNullString, "C:\Windows\system32\", 1
kod satırı ile değiştirerek kullanmayı deneyiniz.
bilginize...iyi çalışmalar,saygılar.
(07/01/2017, 09:38)zetyu yazdı: hocam
bu kodda geciciform adları oduğu için sadece bir form ve metin kutusunda kullanabilirirm.benim amacım uygulamadaki tum form ve metin kutularında kullanmak.
If IsNull(Forms(GeciciFormAdi)(GeciciKontrolAdi)) Then Exit Sub
infield = Forms(GeciciFormAdi)(GeciciKontrolAdi)
If Len(infield) = 0 Then Exit Sub
infield = Left(infield, Len(infield) - 1)
Forms(GeciciFormAdi)(GeciciKontrolAdi) = infield
enter yerine backspace yazınca oluyor.ancak bir kare siliyor ve kapanıyor. DoCmd.Close yu silince çalışmıyor.
SendKeys "{backspace}"
Forms!frmKeyboard.SetFocus
DoCmd.Close
Merhaba. Benim verdiğim backspace kodlarını kullanınız. Sendkeys kodu backspacede çalışmaz.
Farklı formda çalışması için alanın çift kıklandığında olayına
Geciciformadi=
Gecicikontroladi=
Şeklinde tanımlama yapılması gerekli.
2. Mesaja eklediğim örnekteki metin kutusunun çift kıklandığında olayında bu tanımlama yapıldığı için klavye formu açıldığında işlem yapılabiliyor.