Programación General > Visual Basic 6.0 e inferiores

 Deshacer

(1/1)

tyron:
Hola, ¿como puedo deshacer una accion realizada en una caja de texto? Por ejemplo, el bloc de notas, escribes algo y puedes deshacer lo escrito, o borrar algo, y deshacer el borrado. Tengo este codigo:

Declaración de la función API y las constantes:

--- Código: Text ---Private Declare Function SendMessage Lib "User" (ByVal hWnd _          As Long, ByVal wMsg As Long, ByVal wParam As Long, _          lParam As Long) As Long           Const WM_USER = &H400          Const EM_CANUNDO = WM_USER + 22          Const EM_EMPTYUNDOBUFFER = WM_USER + 29          Const EM_UNDO = WM_USER + 23 
Botón Undo:

--- Código: Text ---Dim ok As Long ok = SendMessage(Text1.hWnd, EM_UNDO, 0, 0&) ok = SendMessage(Text1.hWnd, EM_EMPTYUNDOBUFFER, 0, 0&) 
Botón Redo:

--- Código: Text ---Dim ok As Long ok = SendMessage(Text1.hWnd, EM_CANUNDO, 0, 0&) If ok = 0 Then      MsgBox "No puedo deshacer los cambios", 16, "Error" End If ok = SendMessage(Text1.hWnd, EM_UNDO, 0, 0&) 
Previamente he realizado cambios de todo tipo en la caja de texo para luego poder probar el codigo (obvio), pero no funciona. ¿Me falta algo? ¿Esta mal este codigo? o ¿Hay alguna otra manera de realizar lo que quiero?
Un saludo y gracias de antemano.

_vgt_:
mmmm, xk no haces un vector con x ejemplo 10 elementos y vas introduciendo  lo ultimo k escriba el usuario en la caja de texto y si kiere deshacer pues vas reemplazando con lo k tengas en el vector ... cutre pero efectivo ... y funciona xk si mal no recuerdo un compi de clase lo hizo y le funcionaba de cojones :-)

Saludos

 :hola:

OtRa CoSa No pErO "PLaNeS B" ...  xDDDD

Brroz:
Hola.

Seguro que mediante funciones del api no hay problemas, pero he aquí una forma simpática de deshacer:


--- Código: Text ---     Text1.SetFocus    SendKeys "^Z"  
Suerte.

_vgt_:
joeee Brroz eres lo máximo!!!!  :o nunca se me hubiera ocurrido eso... es un lujo saber k estas x aki !!!   :)

Saludos y me apunto eso xk desde luego es cantidad de ingenioso !!!   :hola:

Navegación

[0] Índice de Mensajes

Ir a la versión completa