pcworld online logo

Son işlemi geri almak

Sevgili Windows’unuz programlarınızda kullanabilmeniz için gerekli olan herşeyi önünüze sunmuştur. Örneğin geçen ay verdiğimiz tekniklerden sonra bir text editörü yapmaya karar verdiniz. Ama her editörde olan bir özelliği siz kullananmıyorsunuz; "Geri Alma İşlemi". Ya da editörünüz yaptığınız her hareketten önce text kutusundaki yazılarınızı bir köşede saklıyor.
Dediğimiz gibi WINDOWS, size sunduğu bir API fonksiyonuyla sizi bu zahmetten kurtarıyor. Şekildeki gibi bir form yarattıktan sonra aşağıdaki kısacık kodu girin ve sonuca bir bakın. Programı çalıştırdığınızda her zaman bir önce yaptığınız işlemin kaydedildiğini ve butona basıldığında text kutucuğu üzerine geri geldiği göreceksiniz.

GERIAL.BAS adlı formunuzdan ayrı bir modül yaratıp ilk 4 satırı bunun içine kaydedin.

Declare Function SendMessage Lib "User" (ByVal hWnd As Integer, ByVal wMsg As Integer, ByVal
wParam As Integer, lParam As Any) As Long
Global Const WM_USER = &H400
Global Const EM_UNDO = WM_USER + 23

‘Şimdi formumuza geçebiliriz...
Private Sub Command1_Click()
'Text kutusundaki metin değişmeden önce her seferinde WINDOWS tarafından otomatik ‘olarak
saklanır.

UndoResult = SendMessage(Text1.hWnd, EM_UNDO, 0, 0) ‘API fonksiyonunu çağır.
'Eğer UndoResult = -1 ise bir hata oluşmuş demektir.
End Sub