Я пишу программу. И заметил, что при нажатии на клавишу Esc происходит запуск одной из процедур. Каким образом можно убрать это событие, либо как хотя бы определить почему оно происходит?
Единственная процедура в программе со свойством Cancel = True
Private Sub Form_Unload(Cancel As Integer)
If MsgBox("Уважаемый(ая) коллега," & Chr(13) & "Вы действительно хотите закрыть окно?", vbYesNo + _
vbApplicationModal + vbDefaultButton2 + vbInformation, _
"Завершение работы") = vbNo Then
Cancel = True
Else
Unload frmOpen
Unload frmShtamp
Set frmObor = Nothing
End If
End Sub
Проверял пошагово по F8. После нажатия клавиши Esc программа переходит сразу к следующей процедуре.
Private Sub cmdTitle_Click()
Dim titl As String
titl = cboTitle.Text
With ActiveDocument.Tables
If .Count > 0 Then
With .Item(.Count)
.Cell(.Rows.Count, 1).Select
Selection.Collapse Direction:=wdCollapseStart
Selection.ColumnSelectMode = True
End With
End If
End With
ActiveDocument.Tables(1).Rows.Add
With Selection
.MoveRight Unit:=wdCell
.MoveRight Unit:=wdCell
.Font.Bold = wdToggle
.Font.Underline = wdUnderlineSingle
.TypeText Text:=titl
.MoveRight Unit:=wdCharacter, Count:=7
.MoveRight Unit:=wdCell
.MoveRight Unit:=wdCharacter, Count:=1
.MoveRight Unit:=wdCharacter, Count:=1, Extend:=wdExtend
.Font.Bold = False
.Font.Underline = wdUnderlineNone
.MoveLeft Unit:=wdCharacter, Count:=1
End With
End Sub
Как это устранить?
Исключить выполнение процедуры
Модератор: Naeel Maqsudov
Попробуйте проверить среди свойств кнопок на форме их свойства Cancel. Та процедура, которая вызывается по нажатию кнопки со свойством Cancel=True и должна по логике активировать cmdTitle_Click... Вероятно, эта кнопка как раз и имеет имя cmdTitle.... если, конечно, я правильно понял вопрос
поставив свойство Cancel=False для этой кнопки, форма должна перестать регировать на Esc таким образом.
поставив свойство Cancel=False для этой кнопки, форма должна перестать регировать на Esc таким образом.
Всякое решение плодит новые проблемы.
Большое спасибо! Видимо, так и есть. Пойду проверю.Genyaa писал(а):Попробуйте проверить среди свойств кнопок на форме их свойства Cancel. Та процедура, которая вызывается по нажатию кнопки со свойством Cancel=True и должна по логике активировать cmdTitle_Click... Вероятно, эта кнопка как раз и имеет имя cmdTitle.... если, конечно, я правильно понял вопрос
поставив свойство Cancel=False для этой кнопки, форма должна перестать регировать на Esc таким образом.
Спасибо! Все так!