Undo и Rego (оноже назад и вперед)

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
BOO
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 126
Зарегистрирован: 06.09.2003 (Сб) 14:23
Откуда: Саратовская обл. г.Энгельс

Undo и Rego (оноже назад и вперед)

Сообщение BOO » 26.10.2003 (Вс) 15:04

Поможите лишь идеей программы добрые :cry:
Не могу даже принцип понять как сделать отмену пары действи и их возвращения :?:
Слушайте рок!

hCORe
VB - Экстремал
VB - Экстремал
Аватара пользователя
 
Сообщения: 2332
Зарегистрирован: 22.02.2003 (Сб) 15:21
Откуда: parent directory

Сообщение hCORe » 26.10.2003 (Вс) 16:11

Без знания какая программа, невозможно дать точные рекомендации. :?

Но вообще можно при каждом изменении сохранять данные в неком хранилище (массив или что-то еще?). При нажатии "отмены" возвращаться к предыдущему варианту, при нажатии "повтора" - переходить к следующему. Если после восстановления предыдущего состояния данные изменились, то надо затирать оставшиеся данные в хранилище. Только памяти будет жрать... как любое "офисное" приложение - MS Office ведь тоже хранит все действия пользователя в памяти. Альтернативный вариант: сохранять в хранилище только изменения. Почти беспереспективен из-за своей сложности. Вот так. :twisted:
Моду создают модоки, а распространяют модозвоны.

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 26.10.2003 (Вс) 16:35

Насчёт Ctrl+Z
Код: Выделить всё
'на форме TextBox "Text1"

Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Any) As Long
Const EM_UNDO = &HC7

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyControl + vbKeyZ Then SendMessage Text1.hwnd, EM_UNDO, 0&, 0&
End Sub

Private Sub Form_Load()
KeyPreview = True
End Sub
Нет меня больше


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: AhrefsBot, Yandex-бот и гости: 8

    TopList  
cron