Как перевести true в 1 и false в 0

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

Как перевести true в 1 и false в 0

Сообщение AndrewMarcovich » 02.04.2005 (Сб) 12:22

Как?

Q2W
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 745
Зарегистрирован: 31.01.2004 (Сб) 20:46
Откуда: Питер

Сообщение Q2W » 02.04.2005 (Сб) 12:51

В чём конкретно у тебя проблема?
если ты integer'у присваиваешь значание boolean'а - должно прокатить.

А вообще это делается так:
Допустим твой True или False лежит в переменной a, а результат надо присвоить b

if a then b=1 else b=0
Я знаю верный путь

AndrewMarcovich
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 115
Зарегистрирован: 05.03.2005 (Сб) 10:29

Сообщение AndrewMarcovich » 02.04.2005 (Сб) 13:01

Когда я из базы достаю значение chechboxa вот так chkRememberClient.Value = rs!is_BlackList, то он пишет invalid property value. Там стопудово или 1 или 0.Вот такая вот проблема...

Q2W
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 745
Зарегистрирован: 31.01.2004 (Сб) 20:46
Откуда: Питер

Сообщение Q2W » 02.04.2005 (Сб) 13:05

True - это типа константа, равная 1, а False - равная 0.
Тоесть если бы ты использовал вместо этих двух слов 1 и 0 - ничего бы не изменилось.

Вывод: это не из-за этого.
А про базы я тебе ничего подсказать не могу, спроси лучше в разделе Базы данных.
Я знаю верный путь

Qubicz
Обычный пользователь
Обычный пользователь
 
Сообщения: 87
Зарегистрирован: 16.10.2004 (Сб) 20:21
Откуда: Санкт-Петербург

Сообщение Qubicz » 02.04.2005 (Сб) 13:14

CInt(boolperemen) ?

Ennor
Конструктивный критик
Конструктивный критик
 
Сообщения: 2504
Зарегистрирован: 18.12.2001 (Вт) 3:58
Откуда: Калуга -> Москва

Сообщение Ennor » 02.04.2005 (Сб) 17:51

Поле is_BlackList какого типа в базе? Часом, не строкового?

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

Сообщение A.A.Z. » 02.04.2005 (Сб) 17:54

Hell /HiLevel Bot/ писал(а):True - это типа константа, равная 1
Кхм! :? Всю жизнь -1 была!

Ennor
Конструктивный критик
Конструктивный критик
 
Сообщения: 2504
Зарегистрирован: 18.12.2001 (Вт) 3:58
Откуда: Калуга -> Москва

Сообщение Ennor » 02.04.2005 (Сб) 18:08

A.A.Z. писал(а):
Hell /HiLevel Bot/ писал(а):True - это типа константа, равная 1
Кхм! :? Всю жизнь -1 была!

У чекбокса, если помнишь, свойство Value тоже не булево, а принимает значения {0, 1, 2}.

xolod
Гуру
Гуру
 
Сообщения: 1162
Зарегистрирован: 15.01.2004 (Чт) 0:42
Откуда: Moscow

Сообщение xolod » 02.04.2005 (Сб) 19:53

2 A.A.Z.
Да, VB игнорирует то, что у всего остального программитского мира TRUE=1, FALSE=0; :)

Constant ERROR_SUCCESS deprecated. I'm so happy.
Программирование и дизайн – http://www.macrointellect.ru

Sedge
Alternative Choice
Alternative Choice
Аватара пользователя
 
Сообщения: 1049
Зарегистрирован: 16.05.2002 (Чт) 18:23
Откуда: Somewhere-In-The-Net

Re: Как перевести true в 1 и false в 0

Сообщение Sedge » 02.04.2005 (Сб) 22:36

AndrewMarcovich писал(а):Как?

CheckBox1.Value = IIF(bValue, 1, 0)
Нет?

Q2W
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 745
Зарегистрирован: 31.01.2004 (Сб) 20:46
Откуда: Питер

Сообщение Q2W » 03.04.2005 (Вс) 10:51

Проверил - действительно True = -1.
Это как? Ужас, кошмар!
Я знаю верный путь

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 03.04.2005 (Вс) 11:48

Чё кошмар-то? :)
True = Not False, правильно? :) Напиши MsgBox Not 0, что получишь? :)
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Amed
Алфизик
Алфизик
 
Сообщения: 5346
Зарегистрирован: 09.03.2003 (Вс) 9:26

Сообщение Amed » 03.04.2005 (Вс) 11:49

Код: Выделить всё
intBool = Abs(blnBool)

нет? :)

Ruslan Demidow
Мужчина!
Мужчина!
Аватара пользователя
 
Сообщения: 987
Зарегистрирован: 25.03.2004 (Чт) 13:39
Откуда: N.Novgorod

Сообщение Ruslan Demidow » 03.04.2005 (Вс) 16:52

AndrewMarcovich
Лично я использую такую методику
Код: Выделить всё

chkSetting.Value=Abs(bSetting)

bSetting=Abs(chkSetting.Value)


Ни разу ещё не подводила.
Это Ж-ж-ж-ж неспроста (с) Винни-Пух

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 04.04.2005 (Пн) 8:15

А чем не устраивает IIf()?
Lasciate ogni speranza, voi ch'entrate.

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 04.04.2005 (Пн) 8:58

Тем, что он Variant :)
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 04.04.2005 (Пн) 11:35

Код: Выделить всё
chkSetting.Value = -bSetting
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

xolod
Гуру
Гуру
 
Сообщения: 1162
Зарегистрирован: 15.01.2004 (Чт) 0:42
Откуда: Moscow

Сообщение xolod » 04.04.2005 (Пн) 12:20

2 Andrey Fedorov
Интересно, о чем это вы? Наверное хотели сказать
Код: Выделить всё

chkSetting.Value = not bSetting

Constant ERROR_SUCCESS deprecated. I'm so happy.
Программирование и дизайн – http://www.macrointellect.ru

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 04.04.2005 (Пн) 12:57

xolod писал(а):2 Andrey Fedorov
Интересно, о чем это вы? Наверное хотели сказать
Код: Выделить всё
chkSetting.Value = not bSetting


Нет - я сказал то что хотел сказать!

А именно -(-1) и даст вам 1-ку для ChekBox-a!
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

Sedge
Alternative Choice
Alternative Choice
Аватара пользователя
 
Сообщения: 1049
Зарегистрирован: 16.05.2002 (Чт) 18:23
Откуда: Somewhere-In-The-Net

Сообщение Sedge » 04.04.2005 (Пн) 14:25

Andrey Fedorov писал(а):А именно -(-1) и даст вам 1-ку для ChekBox-a!

А какой смысл устанавливать checked при False :?:

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 04.04.2005 (Пн) 14:28

Sedge писал(а):
Andrey Fedorov писал(а):А именно -(-1) и даст вам 1-ку для ChekBox-a!

А какой смысл устанавливать checked при False :?:


Устанавливать или сбросить... В общем, неважно:

Код: Выделить всё
MyCheckBox.Value = -b


работать будет как надо. Самый простой вариант. Желающие помудрствовать могут продолжить - я здесь умолкаю...
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

Sedge
Alternative Choice
Alternative Choice
Аватара пользователя
 
Сообщения: 1049
Зарегистрирован: 16.05.2002 (Чт) 18:23
Откуда: Somewhere-In-The-Net

Сообщение Sedge » 04.04.2005 (Пн) 14:43

А. Глючу... -1 у нас же True...
Два дня php-кодинга не проходят даром :)


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

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

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

    TopList