powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Арифметические операции с переменной
15 сообщений из 15, страница 1 из 1
Арифметические операции с переменной
    #32852645
КД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уважаемые коллеги! Во-первых, поздравляю всех участников форума и их близких с Новым Годом!
Ну и желаю соответственно все, что положено в таких случаях.

А, во-вторых, прошу помочь, что-то сам не догоняю в чем дело.
Единица к переменной плюсуется, но не минусуется!

Public intNumberOfOptCorrIsOn As Integer

Private Sub optSulfCorr_Click()
Me!optSulfCorr.Value = True
Let intNumberOfOptCorrIsOn = intNumberOfOptCorrIsOn + 1
End Sub

Private Sub optSulfCorr_DblClick(Cancel As Integer)
Me!optSulfCorr.Value = False
Let intNumberOfOptCorrIsOn = intNumberOfOptCorrIsOn - 1
End Sub

'Таких Click-DblClick 16 штук (на каждый ингредиент)

Private Sub cmdCheckAllOptCorrOn_Click()
If intNumberOfOptCorrIsOn = 0 Then
MsgBox "Не выбраны ингредиенты для сравнения", vbOKOnly
ElseIf intNumberOfOptCorrIsOn = 1 Then
MsgBox "Необходимо выбрать еще один ингредиент", vbOKOnly
ElseIf intNumberOfOptCorrIsOn = 2 Then
Me!cmdCheckCorr.SetFocus
Me!cmdCheckCorr.Enabled = True
ElseIf intNumberOfOptCorrIsOn > 2 Then
MsgBox "Можно выбрать только два ингредиента", vbOKOnly
Else
End If
End Sub
...
Рейтинг: 0 / 0
Арифметические операции с переменной
    #32852646
Фотография Темный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Автоподпись:
Все! Профтопики на сегодня будем считать закрытыми. Марш ёлку наряжать :)
...
Рейтинг: 0 / 0
Арифметические операции с переменной
    #32852647
Фотография Темный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
з.ы. А Вова Путин отладчик уже отменил? Или только в 23.55 отменит?
...
Рейтинг: 0 / 0
Арифметические операции с переменной
    #32852654
Дых, хи-хи...
ДаблКлик то отнимает меня, но перед ДаблКлик ВСЕГДА срабатывает Клик. Т.е. по Клику меня прибавляем, по ддДаблКлику меня отнимаем - получается, что я не отнимаюсь...
С НГ!
...
Рейтинг: 0 / 0
Арифметические операции с переменной
    #32852685
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
КДPrivate Sub cmdCheckAllOptCorrOn_Click()
If intNumberOfOptCorrIsOn = 0 Then
ElseIf intNumberOfOptCorrIsOn = 1 Then
ElseIf intNumberOfOptCorrIsOn = 2 Then
ElseIf intNumberOfOptCorrIsOn > 2 Then
Else
End If
End Sub
Вроде Select Case был бы нагляднее...

КД Me!cmdCheckCorr.SetFocus
Me!cmdCheckCorr.Enabled = True
Если перед этим Enabled = False, то SetFocus выдаст ошибку. Надо эти две строчки поменять местами.
...
Рейтинг: 0 / 0
Арифметические операции с переменной
    #32852757
КД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ой, чой-то я про Click перед DoubleClick забыл...
Торопился, наверное, за праздничный стол.
Спасибо!
С наступившим!
...
Рейтинг: 0 / 0
Арифметические операции с переменной
    #32854043
КД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Идея правильная, только надо чуть исправить:
Private Sub optSulfCorr_DblClick(Cancel As Integer)
Me!optSulfCorr.Value = False
Let intNumberOfOptCorrIsOn = intNumberOfOptCorrIsOn - 2
End Sub
...
Рейтинг: 0 / 0
Арифметические операции с переменной
    #32873500
КД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Только я успокоился, как опять проблема. Ситуация, конечно, несколько надумана, но все же...
Private Sub optAmmSecond_Click()
Me!optAmmSecond.Value = True
Me!optAmm.Value = True
Let intNumberOfOptIngredientForSecondAxis = intNumberOfOptIngredientForSecondAxis + 1
End Sub

Private Sub optAmmSecond_DblClick(Cancel As Integer)
Me!optAmmSecond.Value = False
Let intNumberOfOptIngredientForSecondAxis = intNumberOfOptIngredientForSecondAxis - 2
End Sub
Попробовал БЫСТРО пощелкать на переключателе. Приложение реагирует неадекватно! Вроде как подвисает. Или при последующем Debug'е выдает, что значение intNumberOfOptIngredientForSecondAxis = -1! Впечатление, что в какой-то момент DblClick произошел без Click перед ним. Во-вторых, показывает, что Value этого переключателя = True, в то время как судя по отображению на форме должно быть False.
...
Рейтинг: 0 / 0
Арифметические операции с переменной
    #32878300
КД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кто-нибудь может посоветовать что-нибудь дельное по этому поводу?
...
Рейтинг: 0 / 0
Арифметические операции с переменной
    #32878406
Фотография AlexJuice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КДКто-нибудь может посоветовать что-нибудь дельное по этому поводу?
2 варианта:
1. Не париться (забить), ибо
КДСитуация, конечно, несколько надумана
2. Не заморачиваться (отказаться от использования Click в связке с DblClick; возможно, отказаться от переключателей в пользу более подходящих контролов)
...
Рейтинг: 0 / 0
Арифметические операции с переменной
    #32878464
КД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нет, ну как "надумана". Дело в том, что некоторые пользователи начинают думать "выбрать-не выбрать" и процесс размышления сопровождают щелчками мыши. Не париться, конечно, проще. Но грамотно работающее приложение должно предусматривать разные ситуации. "Кабина лифта должна выдерживать прямое попадание самого необученного академика".
А какие другие контролы я мог бы применить, чтобы разрешить эту проблему?
Я попробовал не присваивать значение переменной сразу после кликов:

Private Sub optSulfCorr_Click()
Me!optSulfCorr.Value = True
Rem Let intNumberOfOptCorrIsOn = intNumberOfOptCorrIsOn + 1
End Sub

Private Sub optSulfCorr_DblClick(Cancel As Integer)
Me!optSulfCorr.Value = False
Rem Let intNumberOfOptCorrIsOn = intNumberOfOptCorrIsOn - 1
End Sub

А проверку производить уже потом в зависимости от значения Value. Но и это не решило проблему (Value тоже воспринимается не так - см. выше)!
...
Рейтинг: 0 / 0
Арифметические операции с переменной
    #32878552
Alexey Sh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поддерживаю AlexJuice .
Не стоит пользовать двойной клик для действия противоположного клику.
...
Рейтинг: 0 / 0
Арифметические операции с переменной
    #32878584
Фотография AlexJuice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КДА какие другие контролы я мог бы применить
SpinButton подойдет?
...
Рейтинг: 0 / 0
Арифметические операции с переменной
    #32878758
Элеонора
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
не подскажете, как в таблице сделать: значение поле3 = значение поле1*значение поле2, а то у меня что-то ничего не получается :(
...
Рейтинг: 0 / 0
Арифметические операции с переменной
    #32879883
Фотография paparome
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Элеоноране подскажете, как в таблице сделать: значение поле3 = значение поле1*значение поле2, а то у меня что-то ничего не получается :(
Для собственных вопросов следует заводить новый топик (см. Правила Форума)

Ответ на картинке:
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Арифметические операции с переменной
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]