Работа с Checkbox

Тема в разделе "Lotus - Программирование", создана пользователем makaset, 26 мар 2007.

  1. makaset

    makaset Well-Known Member

    Регистрация:
    14 мар 2007
    Сообщения:
    126
    Симпатии:
    0
    КТо может подсказать.
    вот например в делфи примерно пишется так

    If checkbox1.checked = true then
    fsfs
    else
    erer
    enв

    а как в скрипте писать.
    .......
     
  2. morpheus

    morpheus скриптописец

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    Для: makaset
    в поле создайте значение с псевдонимом ( "туцни шоб была галочка|true" ) вот и получиться у Вас чтото проде

    If InStr( doc.pole1(0) , "true" ) then
    ....
     
  3. wowa

    wowa Well-Known Member

    Регистрация:
    1 фев 2007
    Сообщения:
    842
    Симпатии:
    0
    Извиняюсь, можно еще раз объяснить <!--QuoteBegin-Morpheus+26:03:2007, 08:00 -->
    <span class="vbquote">(Morpheus @ 26:03:2007, 08:00 )</span><!--QuoteEBegin-->в поле создайте значение с псевдонимом ( "туцни шоб была галочка|true" )
    [snapback]60115" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    Что-то я не понял что нужно сделать!!
     
  4. morpheus

    morpheus скриптописец

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    Для: wowa
    Создаёте поле, произвольное имя , тип checkbox
    дальше переходите во вторую закладку свойств поля в секции Choices выбрать Enter choices( one per Line)
    в поле ввода (без кавычек) вставляйте "туцни шоб была галочка|true"
    всё...

    а дальше
    Код (Text):
    If InStr( doc.pole1(0) , "true" ) then  ....
     
  5. wowa

    wowa Well-Known Member

    Регистрация:
    1 фев 2007
    Сообщения:
    842
    Симпатии:
    0
    но оно ведь "туцни шоб была галочка" появится в поле , а зачем мне это значение???
    У меня там свои значения
    www
    qqq
    причем они всегда разные
     
  6. morpheus

    morpheus скриптописец

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    Для: wowa
    ёпть....

    пойми те вы в делфлях чекбокс имеет флаг состояния 0/1 ... true / false
    а в Lotus Вы просто проверяете чему равно поле Ваше и все
    вся Ваша проверка сведёться к

    Select Case doc.pole1(0)
    Case "www" : ' если в поле выбрано галочкой www
    Case "qqq" : ' если в поле выбрано галочко qqq
    case .... ' множество других значений
    end case

    з.ы. Этот код подходит если в поле можно выбирать одно значение, если несколько то
    doc.pole1(0) - 0 уже не катит, надо проверить все значения ( то есть работать с pole1 как с массивом значений pole1(n) )
     
  7. K-Fire

    K-Fire Гость

    <!--QuoteBegin-wowa+4:04:2007, 13:35 -->
    <span class="vbquote">(wowa @ 4:04:2007, 13:35 )</span><!--QuoteEBegin-->но оно ведь "туцни шоб была галочка" появится в поле , а зачем мне это значение???
    [snapback]61275" rel="nofollow" target="_blank[/snapback]​
    [/quote]

    Читайте факи по алиасам :) Если такой чекбокс будет чекнут, то в документе будет значение не "туцни шоб была галочка" хранится, а "true".
     
  8. iosif88

    iosif88 Well-Known Member

    Регистрация:
    14 окт 2009
    Сообщения:
    97
    Симпатии:
    0
    Можно по подробнее?
    Имеется например checkbox:
    "ааа"
    "ббб"
    "ввв"
    "ггг"
    "ддд"

    Нужно проверить отмечено ли ааа ввв ддд, либо одно либо все вместе не важно, хотя бы одно из них Т.е должно быть примерно такое:

    If aaa.checked=true or ввв.checked=true or ддд.checked=true Then
    ...

    Как это сделать?
     
  9. gmp11

    gmp11 Гость

    значение поля checkbox это список состоящий из выбраных значений, например ааа: ввв: ддд. Так что бери это значение, и работай со списком, а разобрать список и проверить что в нём есть и чего нет совсем не сложно.
     
  10. iosif88

    iosif88 Well-Known Member

    Регистрация:
    14 окт 2009
    Сообщения:
    97
    Симпатии:
    0

    Кажется разобрался. Нужно поставить для проверяемых значений - "значение"|true
    И проверить

    Код (Text):
     Forall S In Doc.cbName

    If S ="true"     Then
    ....           
    End If
    End Forall
     
  11. nvyush

    nvyush Lotus team
    Lotus team

    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    Думаю, что не так. Для каждой позиции должен быть свой псевдоним, т.е. в Choices нужно ввести что-то вроде:
    aaa|a
    bbb|b
    ccc|c
    Если будут выбраны пункты "aaa" и "ccc", то значение поля будет массивом из элементов "a" и "c" ("a":"c")
     
  12. iosif88

    iosif88 Well-Known Member

    Регистрация:
    14 окт 2009
    Сообщения:
    97
    Симпатии:
    0
    Да, действительно если для всех одинаков то галочка может стоять только на одном из них.
    Тогда лучше поставить
    aaa|true1
    bbb|
    ccc|true2
    ddd
    eee|true3

    И проверять так:

    Код (Text):
        Forall S In Doc.cb
    If Left(S,4)="true"  Then
    ....
    End If
    End Forall
    Спасибо.
     
  13. Medevic

    Medevic Что это ? :)
    Lotus team

    Регистрация:
    10 дек 2004
    Сообщения:
    3.346
    Симпатии:
    2
    Код (Text):
    Dim ni As NotesItem
    Set ni = Doc.GetFirstItem("cbName")
    If ni.Contains("aaa") Or ni.Contains("bbb") Or ni.Contains("ccc") Then
     
  14. TIA

    TIA :-)
    Lotus team

    Регистрация:
    15 май 2009
    Сообщения:
    790
    Симпатии:
    0
    Нельзя альясы делать пустыми, типа "bbb|". Т.к. при выборе такого элемента, значение поля станет пустым, что эквивалентно ситуации, когда не установлена ни одна галка.
     
  15. iosif88

    iosif88 Well-Known Member

    Регистрация:
    14 окт 2009
    Сообщения:
    97
    Симпатии:
    0
    Я проверил, вроде бы для пустого "bbb|", при выборе его значением является "bbb".
     
  16. Medevic

    Medevic Что это ? :)
    Lotus team

    Регистрация:
    10 дек 2004
    Сообщения:
    3.346
    Симпатии:
    2
    А зачем здесь вообще алиасы? Забавно будет, когда захочешь посмотреть значения поля, а там true[1..n] какие-то. :)
     
  17. TIA

    TIA :-)
    Lotus team

    Регистрация:
    15 май 2009
    Сообщения:
    790
    Симпатии:
    0
    Что-то не так. Я перепроверил под 7кой. Не работает. Как проверяли?
     
  18. iosif88

    iosif88 Well-Known Member

    Регистрация:
    14 окт 2009
    Сообщения:
    97
    Симпатии:
    0
    Sorry, это опечатка. Должно быть так - вообще без алиаса:

    aaa|true1
    bbb
    ccc|true2
    ddd
    eee|true3

    Добавлено:
    Так легче, тем более эти значения сами по себе не нужны.
     
  19. TIA

    TIA :-)
    Lotus team

    Регистрация:
    15 май 2009
    Сообщения:
    790
    Симпатии:
    0
    Пустой альяс это "bbb|", а отсутствие альяса это "bbb". Так у вас пустой альяс или он отсутствует? Описываемое вами поведение соответствует отсутствию альяса.
     
Загрузка...
Похожие Темы - Работа Checkbox
  1. Andrey Kha
    Ответов:
    0
    Просмотров:
    29
  2. Hoasker
    Ответов:
    0
    Просмотров:
    64
  3. garri671
    Ответов:
    0
    Просмотров:
    55
  4. lelik200969
    Ответов:
    0
    Просмотров:
    53
  5. Kozolick
    Ответов:
    0
    Просмотров:
    142

Поделиться этой страницей