Форум программистов, компьютерный форум, киберфорум
Visual C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.54/76: Рейтинг темы: голосов - 76, средняя оценка - 4.54
Рожденная для битвы
 Аватар для marina2
294 / 72 / 15
Регистрация: 08.11.2009
Сообщений: 1,272

Модальное окно

03.01.2012, 13:20. Показов 16052. Ответов 41
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Когда с из одного окна вызываешь другое диалоговое окно (типа dlg.DoModal()), во втором появляются автоматически кнопочки OK и CANSEL. Они такие некрасивые и я не могу от них избавитсяМожет кто-нибудь знает?
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
03.01.2012, 13:20
Ответы с готовыми решениями:

Закрыть модальное окно
Привет! Создал модальное окно: CTimerEventAlert testdlg; testdlg.DoModal(); Вопрос: как закрыть это модальное окно из родителя?

Модальное окно MFC
Есть главное окно,при нажатии кнопки на котором, вызывается модальное окно,в нем заполняются необходимые поля и производится запись в файл,...

Закрыть модальное окно
Необходимо закрыть модальное окно. При закрытии бьёт ошибку...подскажите, как это правильно сделать... void CLab3Dlg::OnOpen() { ...

41
Рожденная для битвы
 Аватар для marina2
294 / 72 / 15
Регистрация: 08.11.2009
Сообщений: 1,272
03.01.2012, 21:22  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
не хотел обижать.
Я не обижаюсь

Добавлено через 5 минут
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
все ваши ошибки делал сам когда-то, поэтому и указываю на них
Просто я забываю, что нужно быть аккуратной...
0
Автор FAQ
 Аватар для -=ЮрА=-
6614 / 4256 / 401
Регистрация: 08.08.2009
Сообщений: 10,325
Записей в блоге: 24
03.01.2012, 21:45
В общем вот проект(сам алгоритм графики сделал кустарным, я на скорую руку переделывал его из этого топика
Построение графиков элементарных функций, но те не менее рандомный график строит, что ещё надо)
Потом проект можно доделать и всё красивенько написать
Миниатюры
Модальное окно  
Изображения
 
Вложения
Тип файла: rar modal_with_temp_project.rar (24.7 Кб, 432 просмотров)
2
Автор FAQ
 Аватар для -=ЮрА=-
6614 / 4256 / 401
Регистрация: 08.08.2009
Сообщений: 10,325
Записей в блоге: 24
03.01.2012, 21:48
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
сам алгоритм графики сделал кустарным
- чуть позже доведу его, просто времени пока мало что то по настоящему элегантное писать. Сам алгоритм прот - ввели число точек для температур(например введя 365 получим целый годовой рандомный график), затем нажали построить графи и...наслаждаемся.
PS:Программу не делал чувствительной к ошибкам ввода(не вводите пожалуйста -5 или 0 точек), думаю доработать проблем не составит. Успехов!
1
Рожденная для битвы
 Аватар для marina2
294 / 72 / 15
Регистрация: 08.11.2009
Сообщений: 1,272
03.01.2012, 21:50  [ТС]
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
Потом проект можно доделать и всё красивенько написать
Ну это я смогу. Спасибо большое за все...
0
Автор FAQ
 Аватар для -=ЮрА=-
6614 / 4256 / 401
Регистрация: 08.08.2009
Сообщений: 10,325
Записей в блоге: 24
03.01.2012, 21:52
Лучший ответ Сообщение было отмечено как решение

Решение

Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
но те не менее рандомный график строит
- компилятор от 2008-й оказался привередливей чем 98-й ругался на объявление переменной i во втором окне
Вот так запишите данную функцию
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
void form::OnShowWindow(BOOL bShow, UINT nStatus) 
{
    CDialog::OnShowWindow(bShow, nStatus);
    
    // TODO: Add your message handler code here
    HPEN    RPEN = getPen(PS_SOLID, 2, RED);
    HPEN    GPEN = getPen(PS_SOLID, 2, GRN);
    HPEN    BPEN = getPen(PS_SOLID, 2, BLU);
    HPEN    WPEN = getPen(PS_SOLID, 3, WHT);
    RECT    pRECT= {0};
    COORD   BGN  = {0};
    COORD   END  = {0};
    double CX, CY;
    GetClientRect(&pRECT);
    int * temp = new int[nPoints];
    int i;
    int maxt = 0;
    int mint = 0;
    for(i = 0; i < nPoints; i++)
    {
        
        temp[i] = rand()%200;
        if(maxt < temp[i])
            maxt = temp[i];
        if(temp[i] < mint)
            mint = temp[i];
    }
    ShowWindow(SW_MAXIMIZE);
    extern WINUSERAPI HDC WINAPI GetWindowDC(IN HWND hWnd);
    HDC hDC = GetWindowDC(m_hWnd);
    if(hDC)
    {
        CX = 1.0*nPoints/(pRECT.right - pRECT.left);
        CY = 1.0*(maxt - mint)/(pRECT.bottom - pRECT.top);
                
        BGN.X = 0          /CX;
        BGN.Y = 1.0*temp[0]/CY + (pRECT.bottom - pRECT.top)/2;
        //SetBkMode(hDC,TRANSPARENT);
        SetPoint (hDC, WPEN, BGN);
        for(i = 1; i < nPoints; i++)
        {
            END.X = 1.0*i      /CX;
            END.Y = 1.0*temp[i]/CY + (pRECT.bottom - pRECT.top)/2;
            PlotLine(hDC, RPEN, BGN, END);
            SetPoint (hDC,WPEN, END);
            BGN = END;
        }
    }
    UpdateData(false);
}
- и всё скомпилируется
3
Автор FAQ
 Аватар для -=ЮрА=-
6614 / 4256 / 401
Регистрация: 08.08.2009
Сообщений: 10,325
Записей в блоге: 24
03.01.2012, 21:54
Вот скрин компиляции в 2008-й
Миниатюры
Модальное окно  
1
Автор FAQ
 Аватар для -=ЮрА=-
6614 / 4256 / 401
Регистрация: 08.08.2009
Сообщений: 10,325
Записей в блоге: 24
03.01.2012, 21:57
Вот это было камнем приткновения - for(int i = 0 так Компилятор 2008-й не захотел меня воспринять в серьёз, поэтому мне пришлось внять его мудрому совету и записать вот так
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
int i;
* * * * int maxt = 0;
* * * * int mint = 0;
* * * * for(i = 0; i < nPoints; i++)
- Написал ещё раз чтобы было понятно в чём была трабла компиляции в VS2008 моего проекта из 22-го поста
1
Рожденная для битвы
 Аватар для marina2
294 / 72 / 15
Регистрация: 08.11.2009
Сообщений: 1,272
03.01.2012, 23:17  [ТС]
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
Вот это было камнем приткновения - for(int i = 0 так Компилятор 2008-й не захотел меня воспринять в серьёз, поэтому мне пришлось внять его мудрому совету и записать вот так
Да понятно:справлюсь
0
Модератор
Эксперт по электронике
8979 / 6745 / 921
Регистрация: 14.02.2011
Сообщений: 23,864
04.01.2012, 23:18
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
for(int i = 0
не понял в чем проблемма???
попробую предположить
вот на такой код
2008 2005 2010 не будет ругаться а шестерка будет
C++
1
2
3
4
5
6
7
8
for(int i =0;i<10;i++)
{
.......
}
for(int i =0;i<10;i++)
{
.......
}
а на такой шестерка не будет остальные будут
C++
1
2
3
4
5
6
7
8
for(int i =0;i<10;i++)
{
.......
}
for( i =0;i<10;i++)
{
.......
}
дело в том что по старому стандарту если ты объявил переменную в цикле она видна во всей функции
а по новому только в теле цикла
там еще несколько косяков из-за несовпадения стандартов
посему трудно исходники переводить из 6 в современные
0
Автор FAQ
 Аватар для -=ЮрА=-
6614 / 4256 / 401
Регистрация: 08.08.2009
Сообщений: 10,325
Записей в блоге: 24
04.01.2012, 23:46
ValeryS, проще всего объявлять итератор в самом начале функции(как это сделал во втором варианте) и не ломать голову.Такое объявление позволит коду одинаково хорошо компилиться что на 98 что на 2008.Что же касается объявления итераторов в заголовках for то меня от этого коробит(в программе изначально дал объявление,т.к. просто забыл о втором цикле)...

Добавлено через 5 минут
PS:ValeryS, лучше почитайте топик с 12-го поста-будете знать где в редакторе ресуров в 2008-й ставится русский для диалогового окна
0
90 / 125 / 28
Регистрация: 17.10.2010
Сообщений: 1,321
17.03.2013, 21:42
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
PS:ValeryS, лучше почитайте топик с 12-го поста-будете знать где в редакторе ресуров в 2008-й ставится русский для диалогового окна
-=ЮрА=- я внимательно читал 12-й пост, но к сожалению, так и не понял как в редакторе ресурсов ставится русский для диалогового окна, у меня при запуске проекта в место русского текста появляются кракозябры????? Покажи пожалуйста на примере последнего проекта, как это сделать????? Заранее огромное спасибо.
Миниатюры
Модальное окно  
0
Автор FAQ
 Аватар для -=ЮрА=-
6614 / 4256 / 401
Регистрация: 08.08.2009
Сообщений: 10,325
Записей в блоге: 24
17.03.2013, 21:51
Цитата Сообщение от isaak Посмотреть сообщение
-=ЮрА=- я внимательно читал 12-й пост, но к сожалению, так и не понял как в редакторе ресурсов ставится русский для диалогового окна, у меня при запуске проекта в место русского текста появляются кракозябры????? Покажи пожалуйста на примере последнего проекта, как это сделать????? Заранее огромное спасибо.
- См на скрине
Миниатюры
Модальное окно  
1
90 / 125 / 28
Регистрация: 17.10.2010
Сообщений: 1,321
17.03.2013, 22:23
-=ЮрА=- ты мог бы показать на примере проекта modal_with_temp_project, потому что на скрине выше другой проект и у него другие папки. Я пробовал в свойствах rc файла менять язык, без результатно. Хотя там и так по умолчанию стоит русский????? Заранее огромное спасибо!!!!!
Миниатюры
Модальное окно   Модальное окно  
0
Модератор
Эксперт по электронике
8979 / 6745 / 921
Регистрация: 14.02.2011
Сообщений: 23,864
17.03.2013, 23:14
isaak, ты куда то не туда полез
ты берешь свойства всего проекта а нужно свойства диалога
в редакторе ресурсов на имени диалога(именно на имени а не на самом диалоге)правой кнопкой мыши
выбираешь свойства и ставишь язык
Миниатюры
Модальное окно  
0
Модератор
Эксперт по электронике
8979 / 6745 / 921
Регистрация: 14.02.2011
Сообщений: 23,864
17.03.2013, 23:17
на первом скине у тебя показано что не может открыть редактор ресурсов
это из за того что файл ресурсов(*.RC) открыт как текстовый, закрой его
0
90 / 125 / 28
Регистрация: 17.10.2010
Сообщений: 1,321
18.03.2013, 21:34
Покажите пожалуйста, где в прикрепленном ниже проекте, в редакторе ресурсов на имени диалога изменить язык????? Не понятно весь мозг себе сломал?????Заранее огромное спасибо.
Вложения
Тип файла: rar modal_with_temp_project.rar (24.7 Кб, 11 просмотров)
0
Автор FAQ
 Аватар для -=ЮрА=-
6614 / 4256 / 401
Регистрация: 08.08.2009
Сообщений: 10,325
Записей в блоге: 24
18.03.2013, 23:00
isaak, установи себе TeamViewer как нибудь по свободе покажу онлайн как переставлять язык. В аттаче проект с переставленным русским для главного диалога
Миниатюры
Модальное окно   Модальное окно  
Вложения
Тип файла: rar modal_with_temp_project.rar (27.0 Кб, 10 просмотров)
1
90 / 125 / 28
Регистрация: 17.10.2010
Сообщений: 1,321
18.03.2013, 23:44
Хорошо -=ЮрА=- обязательно установлю если можно или сегодня или завтра можно будет попробовать? Заранее огромное спасибо.
0
1 / 1 / 0
Регистрация: 23.07.2013
Сообщений: 72
28.07.2013, 18:37
-=ЮрА=-, скажите, пожалуйста, а при построении графика температур вы создавали свой класс унаследованный от CStatic?
0
Автор FAQ
 Аватар для -=ЮрА=-
6614 / 4256 / 401
Регистрация: 08.08.2009
Сообщений: 10,325
Записей в блоге: 24
28.07.2013, 19:26
MaximRTS, Нет конечно же, я рисовал в контексте модального диалогового окна, в частности отрисовка ведётся в ф-ции
C++
1
void form::OnShowWindow(BOOL bShow, UINT nStatus)
там CStatic-ом и не пахнет:
C++
1
class form : public CDialog
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.07.2013, 19:26
Помогаю со студенческими работами здесь

Как cделать, чтобы модальное диалоговое окно не реагировало на клавишы Esc и Еnter?
Помогите, как зделать чтобы модальное диалоговое окно не реагировало на клавишы (тоесть не закривалось) Esc и Enter ?

Сохранить изменение в объекте главного диалогового окна, после того, как второе модальное окно закрывается
Есть главное диалоговое окно и его класс А, производный от класса CDialog, есть еще одно модальное диалоговое окно (его класс Б, тоже...

Нужно закрыть модальное окно и сделать активным вызвавшее его окно
Мне нада средствами Win API закрыть модальное окно и сделать активным вызвавшее его окно. Кто знает как это сделать?

Создать модальное окно (дочернее окно) как в одноклассниках
Здраствуйте всем, Нужна помощь. Я хочу создать модальное окно (дочерное окно) в ASP.NET на примере как в одноклассниках. В...

Как создать окно в окне (модальное окно)?
Подскажите новичку, как создать на сайте в родительском окне небольшое окошко поверх него для ввода некоторой информации.


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

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru