Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.03.2010, 11:40   #1
MFCCasper
 
Регистрация: 24.03.2010
Сообщений: 9
По умолчанию функция Get Document не работает в CDialog. как получить документ в CDIalog

пишу прогу на DOc/view в MFc. есть обычный диалог с кнопкой. при нажатии на кнопку хочу получить указатель на документ используя функцию GetDocument ,но эта функция не работает. как получить документ ?
код выглядит так :

void
CTabForm_Redact::OnGetRecordCount()
{
CChemistDoc* pDoc = GetDocument();
ASSERT(pDoc);

int n_count;
n_count = pDoc->m_rst.GetRecordCount();
AfxMessageBox(n_count);
}

а ошибка такая : error C3861: 'GetDocument': identifier not found.
MFCCasper вне форума Ответить с цитированием
Старый 24.03.2010, 12:21   #2
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,336
По умолчанию

GetDocument насколько я помню - метод класса CView. в sdi/mdi вид связывается с документом (и окном, естесна) при создании окна. в диалоге такого нет. можно попробовать создать вид, объявить указатель на него в диалоге, и создать свою реализацию GetDocument, возвращая ссылку на документ из вида.
вообще, диалог и документ - понятия несовместимые. если так хочется диалог - создай sdi документ, например, и уже на нем создай dialogbar. самый правильный вариант, имхо.
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 24.03.2010, 14:21   #3
MFCCasper
 
Регистрация: 24.03.2010
Сообщений: 9
По умолчанию

OK ) ... пасиб ))) а не подскажете как приблизительно должна выглядеть реализация этой функции ???

Последний раз редактировалось MFCCasper; 24.03.2010 в 14:23.
MFCCasper вне форума Ответить с цитированием
Старый 24.03.2010, 14:43   #4
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,336
По умолчанию

2MFCCasper
ты походу прослушал мое второе замечание.
Цитата:
вообще, диалог и документ - понятия несовместимые. если так хочется диалог - создай sdi документ, например, и уже на нем создай dialogbar. самый правильный вариант, имхо.
а накидать сходу не смогу, ибо это нелогичное поведение, ибо в мфц диалог-документ-вид как то дико. нужно пробовать. еще раз делаю акцент на диалогбаре, размещенным на sdi/mdi. это тебя должно устроить
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 24.03.2010, 15:06   #5
MFCCasper
 
Регистрация: 24.03.2010
Сообщений: 9
По умолчанию

))) OK esho ras spasibo )))
MFCCasper вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Gecko. Получить Document postal2 Компоненты Delphi 1 28.10.2010 09:28
Как установить microsoft document explorer? mutabor Софт 5 07.03.2009 00:27
Как обратиться к линку из document.write ? Navsad JavaScript, Ajax 8 31.01.2009 17:08
Объясните, как работает функция strlen() TheWanderer Общие вопросы C/C++ 9 25.11.2008 22:46
CDialog передача параметров! mahsus Общие вопросы .NET 4 09.03.2008 17:40