Как закрыть диалог с клавиатуры?

Тема в разделе "Lotus - Программирование", создана пользователем nvyush, 11 июн 2010.

  1. nvyush

    nvyush Lotus team
    Lotus team

    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    Здравствуйте все!
    Чувствую себя круглым дураком, но никак не могу понять, как же закрыть окно диалога с клавиатуры. Подформа для диалога примитивная — одно текстовое поле в таблице (нужно реализовать что-то вроде workspace.Prompt(3...), только с многострочным полем). С мышкой всё нормально работает, но как нажать ОК с клавиатуры? Перепробовал кучу разных сочетаний клавиш — всё бестолку. Конечно, можно нарисовать свои кнопки и скрыть штатные, но очень бы не хотелось. Есть идеи?

    Добавлено
    Когда снимаю полю флаг многострочности, всё нормально работает по Enter, но мне нужно именно многострочное поле.
     
  2. turumbay

    Регистрация:
    13 мар 2009
    Сообщения:
    625
    Симпатии:
    2
    tab + space?
     
  3. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Регистрация:
    27 авг 2008
    Сообщения:
    6.081
    Симпатии:
    300
    а Tab (кот. сфокусирует на ОК), Space...
    не устроит?

    опоздал на сек :(
     
  4. Klido

    Klido Гость

    имеется ввиду программно, я думаю.. что-то такое давно копали, припоминаю... типа присвоить в диалоге сочетание клавиш кнопкам диалога... вроде надо было строить собственный диалог, а не юзать стандартный...сейчас погляжу не осталось ли следов...
     
  5. nvyush

    nvyush Lotus team
    Lotus team

    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    Для однострочного поля работает и Enter и Tab+Space.
    В многострочном поле Enter добавляет строки, что, впрочем, и нужно, а Tab никуда фокус не переводит. Добавил ещё одно редактируемое поле, стало ещё веселей — по Tab фокус переводится в добавленное поле и дальше по кругу: поле-OK-Cancel-поле-... В многострочное поле фокус больше не переводится! Какие индусы писали лотусовый уи?
     
  6. Klido

    Klido Гость

    nvy
    хм, проверил на 3-х наугад своих диалогах с многострочными текстовыми полями - таб+энтер норм работает...
    ньюансы полей/диалога? версия клиента?
     
  7. turumbay

    Регистрация:
    13 мар 2009
    Сообщения:
    625
    Симпатии:
    2
    to nvy:
    похожен важен порядок размещения контролов на форме. попробуйте поиграть с размещением таблицы, поля...
    всех не перечислю, но часть народа засветилась :)
    <div class="sp-wrap"><div class="sp-head-wrap"><div class="sp-head folded clickable">xsp\nsf\lib\lwpd.commons.jar</div></div><div class="sp-body"><div class="sp-content">
    Код (Text):
    package com.ibm.commons.log;
    public class DevLog extends Log
    {
    public static final LogMgr AGUIRARD = loadDev("aguirard");
    public static final LogMgr AKULKARN = loadDev("akulkarn");
    public static final LogMgr CLLOWE = loadDev("cllowe");
    public static final LogMgr DOCONNOR = loadDev("doconnor");
    public static final LogMgr MGL = loadDev("mgl");
    public static final LogMgr PHIL = loadDev("phil");
    public static final LogMgr ISHFAK = loadDev("ishfak");
    public static final LogMgr SKUMAR = loadDev("skumar");
    public static final LogMgr GIRIBAXI = loadDev("giribaxi");
    public static final LogMgr MPIYUSH = loadDev("mpiyushi");
    public static final LogMgr ISHA = loadDev("isha");
    public static final LogMgr OSL = loadDev("osl");
    public static final LogMgr GOK = loadDev("gok");
    ....
    что характерно - AGUIRARD это очевидно Andre Guirard, ведущий блога http://www-10.lotus.com/ldd/bpmpblog.nsf, которого я переодически цитирую здесь.
     
  8. nvyush

    nvyush Lotus team
    Lotus team

    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    Блин, :ya_lamo:
    Таблицу с Layout'ом спутал. Копипастнул из другой базы особо не разбираясь. Попробовал с таблицей — всё нормально. Спасибо всем за участие, вопрос снят.
     
Загрузка...

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