Доступ — вызов по щелчку из выпадающего списка

#ms-access

#ms-access

Вопрос:

В настоящее время у меня есть форма в базе данных Access 2007 с выпадающим списком, в котором, если не щелкнуть выпадающий список, я не хочу, чтобы он фокусировался. Это работает большую часть времени, когда пользователь нажимает на выпадающий список, а затем выбирает строку, это вызовет AfterUpdate событие, и поэтому я могу просто изменить фокус с помощью этого.

Однако моя проблема в том, что, когда пользователь открывает выпадающий список, ничего не выбирает и нажимает, чтобы уйти. Выпадающий список исчезает, но выпадающий список по-прежнему находится в фокусе.

Мне интересно, есть ли какое-либо событие, которое я пропускаю, которое будет охватывать это, или какой-либо обходной путь, чтобы заставить это работать.

Спасибо

Ответ №1:

Попробуйте установить событие в разделе сведений о форме. Что-то вроде

 Private Sub Detail_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
    Me.WhereverYouWant.SetFocus
End Sub
  

введите описание изображения здесь

Комментарии:

1. Спасибо. Это было то, чем я занимался. Мне нужно было еще несколько событий из других источников (заголовок, нижний колонтитул и т. Д.), И вместо записи Me.<Control>.SetFocus я сначала проверил, что выпадающий список является активным элементом управления, а затем вроде как отказался от этого. Это не идеально, если вы снова нажмете стрелку, она все равно не сработает. Я пытался это исправить, но мои решения, похоже, приводят к сбою Access, а затем перезапускаются, поэтому я, вероятно, оставлю его там. Еще раз спасибо.

2. Я не понимаю, почему это не сработает, основываясь на том, что вы сказали. Я создал среду, и она работала просто отлично. Что касается сбоя доступа, вы уверены, что в форме нет другого события, которое запускается одновременно. Кажется, что где-то есть какой-то конфликт.