Bmp-подгрузка, создание единственного экземпляра класса

Тема в разделе "MS Visual C++", создана пользователем EuGenius, 28 янв 2007.

Статус темы:
Закрыта.
  1. EuGenius

    EuGenius Гость

    Вопрос 1. Как открывать форму только в единственном экземпляре?
    Вроде можно как-то класс обьявить...
    Форма открывается при появлении сообщения, получается так, что форма открывается несколько раз.
    Вопрос 2. Как в MFC задавать статическому обьекту (Picture Control) на форме разные bmp-файлы?
    Пробовал следующее
    Код (Text):
    ...
    //назначил контрол в хидере
    CStatic m_bmpSound;
    ...
    void CBellvisualDlg::DoDataExchange(CDataExchange* pDX)
    {
    CDialog::DoDataExchange(pDX);
    //{{AFX_DATA_MAP(CBellvisualDlg)
    DDX_Control(pDX, IDB_BITMAP_SOUND, m_bmpSound);
    }
    ...
    //вот сама попытка
    m_bmpSound.SetBitmap(LoadBitmap(NULL, MAKEINTRESOURCE(IDB_BITMAP_YESSOUND)));
    ...
    Может там чего-то не хватает?
    "m_bmpSound.SetBitmap(...);" делалось в инициализации диалога (OnInitDialog()).
    Благодарю за помощь. :) ;) :)
     
  2. EuGenius

    EuGenius Гость

    Единственный экземпляр формы сделал так:
    Код (Text):
    CAboutDlg about;//создаём экземпляр класса
    void CBellvisualDlg::OnAbout()
    {  
    if(!(IsWindow(about.m_hWnd)))
    {
    //Т.е. если формы не существует, отображаем ее
    about.DoModal();
    }
    return;
    }
    :) ;) :D
     
  3. grigsoft

    grigsoft Well-Known Member

    Регистрация:
    15 ноя 2005
    Сообщения:
    735
    Симпатии:
    0
    А в чем смысл? Пока работает DoModal, ты сюда опять не войдешь (разве что с другого потока?). И есть сомнения что повторный вызов DoModal с тем же экземпляром пройдет нормально.
     
  4. EuGenius

    EuGenius Гость

    Форма открывается при появлении сообщения, получается так, что форма открывается несколько раз.
    Сообщение ID_HELP - от кнопки F1
    сколько раз нажмешь F1 - столько раз клацаешь Esc
     
Загрузка...
Похожие Темы - Bmp подгрузка создание
  1. Vadik(R)
    Ответов:
    0
    Просмотров:
    2.158
  2. admin
    Ответов:
    10
    Просмотров:
    6.689
Статус темы:
Закрыта.

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