Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Проблема даже не знаю с чем!

9.7K
19 декабря 2008 года
SpeedShifter
67 / / 07.10.2007
Извените, что название не несет какой либо "полезной" инфы, но действительно не ясно в чем проблема.
Проект такой - пользовательский интерфейс на MFC, причем со скинами (почти все элементы нестандартные). Написона на основе Диалогов: т.е. есть главный диалог, и два вспомагательный (дочерних, ввиде таб-контрола, точнее просто есть две кнопки, которые ShowWindow(SW_SHOW); либо ShowWindow(SW_HIDE); взависимости от того что нажато). На одной из страниц есть ListCtrl (переделанный: REPORT, OWNER_DATA), так вот почему- то при выборе (мышкой) этого контрола, и последующем нажатии Enter этот Диалог (точнее TAB- страничка) :eek:прячется!?
Да вот еще сделал в ListCtrl отлов KeyDown- так вот нажатие Enter туда не приходит (на остальные кнопки реакция есть)!
14
19 декабря 2008 года
Phodopus
3.3K / / 19.06.2008
Ну значит кто-то отловил энтер для своих корыстных целей. Ищите в коде проекта.
288
20 декабря 2008 года
nikitozz
1.2K / / 09.03.2007
Мало, что понял из вопроса :)
Что именно "прячется". Диалоговое окно или вкладка?
Может выложите скрин.
9.7K
20 декабря 2008 года
SpeedShifter
67 / / 07.10.2007
Вот первый TAB- диалог:[ATTACH]3279[/ATTACH]
Вот второй:[ATTACH]3280[/ATTACH]
Как видно они оба дочерние от главного окна.
Вот так [ATTACH]3281[/ATTACH]происходит если кликнуть мышкой по списку и потом нажать Enter (с другим TAB-диалогом такого не происходит).
9.7K
20 декабря 2008 года
SpeedShifter
67 / / 07.10.2007
Более того если диалог (дочерний), в ктором содержится этот список, создать с флагом DS_CONTROL (я не знаю что это значит), то при нажатии Enter программа полностью завершается!

Список пробовал менять на самый простой(мой редактируемый, кстати за это тоже спасибо всем, кто помагал:[ATTACH]3282[/ATTACH]) - таже ситуация.
9.7K
21 декабря 2008 года
SpeedShifter
67 / / 07.10.2007
Причем оказалось, что не приходят еще и сообщения от стрелочек!?
Подскажите плиз.
288
21 декабря 2008 года
nikitozz
1.2K / / 09.03.2007
Цитата: SpeedShifter
Более того если диалог (дочерний), в ктором содержится этот список, создать с флагом DS_CONTROL (я не знаю что это значит), то при нажатии Enter программа полностью завершается!



А можно увидеть код создания диалога?

9.7K
21 декабря 2008 года
SpeedShifter
67 / / 07.10.2007
Так сгенирировал Wizard главный дилог (тот которой с кнопкой минимизации)
 
Код:
CGostDlg dlg;
    m_pMainWnd = &dlg;
    INT_PTR nResponse = dlg.DoModal();


А так я создаю в OnInitDlg одну из вкаладок
 
Код:
m_ListPage.Create(IDD_LIST_DIALOG, this);
    m_ListPage.SetWindowPos(&wndTop, rc.left+1, 51, rc.right-2, rc.bottom-51-26, NULL );
    m_ListPage.ShowWindow(SW_SHOW);

Так выглядит Ресурсный файл
Код:
IDD_GOST_DIALOG DIALOGEX 0, 0, 480, 283
STYLE DS_SETFONT | WS_POPUP | WS_VISIBLE
EXSTYLE WS_EX_APPWINDOW
FONT 8, "Times New Roman", 0, 0, 0x1
BEGIN
END

IDD_LIST_DIALOG DIALOGEX 0, 0, 480, 283
STYLE DS_SETFONT | WS_CHILD
FONT 8, "Times New Roman", 0, 0, 0x1
BEGIN
    CONTROL         "",IDC_LIST,"SysListView32",LVS_REPORT | LVS_ALIGNLEFT | LVS_OWNERDATA | WS_GROUP | WS_TABSTOP,2,22,476,30
END

IDD_OPTION_PAGE DIALOGEX 0, 0, 480, 283
STYLE DS_SETFONT | WS_CHILD
FONT 8, "Times New Roman", 0, 0, 0x1
BEGIN
END
355
21 декабря 2008 года
<SCORP>
786 / / 21.10.2006
вообще, смахивает то, что onOK у диалога вызывается. ну он, соответственно и закрывается
9.7K
21 декабря 2008 года
SpeedShifter
67 / / 07.10.2007
Да дА Да!!!
Ну как можно так было! А я все об IDCANCEL только и думал!
Ох!

Вопрос такой, а как теперь заставить этот энтер (и стрелочки) приходить туда куда нужно?

Хоть это и не в тему, но ваще как красиво вышло или это излишество?
355
21 декабря 2008 года
<SCORP>
786 / / 21.10.2006
для начала переопределить onOK, чтобы не закрывал диалог
а дальше зависит от результатов )
9.7K
21 декабря 2008 года
SpeedShifter
67 / / 07.10.2007
Ну я же уже написал: Спасибо получилось!!!
Действительно Энтер расценивается как IDOK!
8.9K
04 января 2009 года
Kap
77 / / 10.09.2006
default button убрать. По ходу, все события клавиатуры приходят кнопке по умолчанию.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог