Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
 Аватар для no_wearines
56 / 52 / 21
Регистрация: 01.01.2012
Сообщений: 347

Программное закрытие диалога

26.04.2014, 21:23. Показов 1560. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.

Есть форма. на ней кнопка, при нажатии на которую отображается диалог (OpenDialog1->Execute()). Приложение закрывается через меню в системном трее.
Так вот где беда: дело в том,что если перед выходом не закрыть открытый диалог, приложение ступорится (процессор забивается на все 100).

Как этот диалог закрыть программно?
пробовал через:
C++
1
SendMessage(Form4->OpenDialog1->Handle, WM_SYSCOMMAND, SC_CLOSE, 0);
Закрывать приложение через Application->Terminate();
Не помогает.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.04.2014, 21:23
Ответы с готовыми решениями:

OpenPictureDialog - выбор файла и закрытие диалога
1. Для выбора файла в OpenPictureDialog нужно нажать два раза на открыть. Первый раз мигает и опять включается. То же самое с отменой. По...

Программное закрытие процесса
Господа Программисты Можно ли программно закрыть выполняющийся процесс, как через диспетчер задач. Например, моему приложению...

Программное закрытие окон из с++
Здравствуйте! Столкнулся с проблемой. Из программы открываются файлы jpg с помощью ShellExecute. Windows Эти фотографии открывает с...

1
 Аватар для Gremlin
519 / 307 / 58
Регистрация: 30.07.2008
Сообщений: 607
26.04.2014, 21:52
костыль конечно, но работает
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
    if(OpenDialog1->Execute())
    {
        //
    }
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
    Label1->Caption = GetTickCount();
    Timer1->Tag = Timer1->Tag + 1;
    Form1->Caption = IntToStr(Timer1->Tag) + " / 5";
    if(Timer1->Tag == 5)
    {
        Form1->Close();
    }
}
//---------------------------------------------------------------------------
мне кажется, что по правилам "хорошего тона", то если диалог открыт и пытаться закрыть приложение, то намекнуть пользователю: не забыл ли он чего? (SetForgoundWindow или как то так, сфокусировав пользователя на диалоге)
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
26.04.2014, 21:52
Помогаю со студенческими работами здесь

Закрытие модального диалога
Всем привет. Есть форма, при нажатии на ней на кнопку открывается (exec()) модальный диалог, в котором есть две кнопки: enterBt - применить...

Закрытие диалога из потока
Имеем следующую ситуацию: Перед завершением работы потока необходимо закрыть диалог: DWORD thread() { ... ...

Программное открытие/закрытие дисковода
Добрый день, есть ли в qt возможность открыть и закрыть дисковод программно?

Закрытие окна диалога
Имеется окно, в нем пытаюсь вызвать диалоговое окно. Окно открывается, но вместе с закрытием закрывается вся прога. С чем связано,...

Javafx закрытие диалога
Салют! Не могу понять. Создаю диалог унаследован от Dialog, но не могу закрыть его. Он не закрывается. Как это исправить?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru