Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Системное программирование и WinAPI > файл ресурсов


Автор: Andrej78 25.1.2011, 18:44
Доброго времени суток.

Подскажите пожалуйста как в файле ресурсов из окна диалога Dialog2 (IDD_DIALOG2)перенести элементы управления на основное окно?
Если просто переношу строки перед самим диалогом, ничего не меняется.
Код

// Microsoft Visual C++ generated resource script.
//
#include "resource.h"

#define APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 2 resource.
//
#define APSTUDIO_HIDDEN_SYMBOLS
#include "windows.h"
#undef APSTUDIO_HIDDEN_SYMBOLS

/////////////////////////////////////////////////////////////////////////////
#undef APSTUDIO_READONLY_SYMBOLS

/////////////////////////////////////////////////////////////////////////////
// Russian resources

#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_RUS)
#ifdef _WIN32
LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT
#pragma code_page(1251)
#endif //_WIN32

/////////////////////////////////////////////////////////////////////////////
//
// Icon
//

// Icon with lowest ID value placed first to ensure application icon
// remains consistent on all systems.
IDI_OBLIG_WIN_GRAPH     ICON                    "Oblig_win_graph.ico"
IDI_SMALL               ICON                    "small.ico"

/////////////////////////////////////////////////////////////////////////////
//
// Menu
//

IDC_OBLIG_WIN_GRAPH MENU 
BEGIN
    POPUP "&File"
    BEGIN
        MENUITEM "Dialog2",                     IDM_DIALOG2
        MENUITEM "E&xit",                       IDM_EXIT
    END
    POPUP "&Help"
    BEGIN
        MENUITEM "&About ...",                  IDM_ABOUT
    END
END


/////////////////////////////////////////////////////////////////////////////
//
// Accelerator
//

IDC_OBLIG_WIN_GRAPH ACCELERATORS 
BEGIN
    "?",            IDM_ABOUT,              ASCII,  ALT
    "/",            IDM_ABOUT,              ASCII,  ALT
END


/////////////////////////////////////////////////////////////////////////////
//
// Dialog
//

IDD_ABOUTBOX DIALOGEX 22, 17, 201, 76
STYLE DS_SETFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "About"
FONT 8, "System", 0, 0, 0x0
BEGIN
    ICON            IDI_OBLIG_WIN_GRAPH,IDC_MYICON,14,9,20,20
    LTEXT           "Ðèñîâàëêà ãðàôèêîâ îáëèãàöèé",IDC_STATIC,49,10,109,8,SS_NOPREFIX
    LTEXT           "21/12/2010",IDC_STATIC,49,20,119,8
    DEFPUSHBUTTON   "OK",IDOK,166,9,30,11,WS_GROUP
END

IDD_DIALOG2 DIALOGEX 0, 0, 727, 439
STYLE DS_SETFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
EXSTYLE WS_EX_OVERLAPPEDWINDOW
CAPTION "Ãðàôèêè îáëèãàöèé"
FONT 8, "Microsoft Sans Serif", 400, 0, 0xCC
BEGIN
    DEFPUSHBUTTON   "OK",IDOK,22,400,50,14
    PUSHBUTTON      "Cancel",IDCANCEL,22,417,50,14
    PUSHBUTTON      ">",IDC_BUTTON6,143,68,31,17
    PUSHBUTTON      ">>",IDC_BUTTON2,143,90,31,17
    PUSHBUTTON      "<<",IDC_BUTTON7,143,113,31,17
    PUSHBUTTON      "<",IDC_BUTTON8,143,135,31,17
    LISTBOX         IDC_LIST4,30,45,106,132,LBS_NOINTEGRALHEIGHT | LBS_EXTENDEDSEL | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP
END


#ifdef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// TEXTINCLUDE
//

1 TEXTINCLUDE 
BEGIN
    "resource.h\0"
END

2 TEXTINCLUDE 
BEGIN
    "#define APSTUDIO_HIDDEN_SYMBOLS\r\n"
    "#include ""windows.h""\r\n"
    "#undef APSTUDIO_HIDDEN_SYMBOLS\r\n"
    "\0"
END

3 TEXTINCLUDE 
BEGIN
    "\r\n"
    "\0"
END

#endif    // APSTUDIO_INVOKED


/////////////////////////////////////////////////////////////////////////////
//
// DESIGNINFO
//

#ifdef APSTUDIO_INVOKED
GUIDELINES DESIGNINFO 
BEGIN
    IDD_DIALOG2, DIALOG
    BEGIN
        LEFTMARGIN, 7
        RIGHTMARGIN, 720
        BOTTOMMARGIN, 432
    END
END
#endif    // APSTUDIO_INVOKED


/////////////////////////////////////////////////////////////////////////////
//
// String Table
//

STRINGTABLE 
BEGIN
    IDS_APP_TITLE           "Oblig_win_graph"
    IDC_OBLIG_WIN_GRAPH     "OBLIG_WIN_GRAPH"
END

#endif    // Russian resources
/////////////////////////////////////////////////////////////////////////////



#ifndef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 3 resource.
//


/////////////////////////////////////////////////////////////////////////////
#endif    // not APSTUDIO_INVOKED

 

Автор: Dem_max 25.1.2011, 19:49
а что такое основное окно ?

Автор: xvr 25.1.2011, 22:49
Цитата(Andrej78 @  25.1.2011,  18:44 Найти цитируемый пост)
Подскажите пожалуйста как в файле ресурсов из окна диалога Dialog2 (IDD_DIALOG2)перенести элементы управления на основное окно
Если вкратце - то никак. 

Автор: GremlinProg 26.1.2011, 09:15
Цитата(Andrej78 @  25.1.2011,  20:44 Найти цитируемый пост)
Если просто переношу строки перед самим диалогом, ничего не меняется.

можно сделать сам диалог основным окном: http://forum.vingrad.ru/forum/topic-268171.html

не помню только, делал ли я там поправку на WM_INITDIALOG:
WM_INITDIALOG придет только если при создании диалога указана процедура диалога, хотя бы такого вида:
Код

INT_PTR CALLBACK MyDlgProc( HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam ){
  return FALSE;
}

если WM_INITDIALOG обрабатывать не требуется, то примера по ссылке достаточно

Автор: Andrej78 26.1.2011, 11:15
Спасибо, теперь хотя бы знаю, что нельзя, а то я уже где только не искал.

Про субклассирование пока не понял (чайник я).

Значит буду переносить контролы в WndProc WM_CREATE 
и через CreateWindowEx делать их.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)