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


Автор: ПашкаКорчагин 17.5.2006, 15:29
существует 2 класса производных от СDialog
class MyClass1:public CDialog
class MyClass2:public CDialog

CObArray m_obArray защищенный (protected) MyClass1
задача состоит в том чтобы при определенном событии над объектом класса MyClass1
нарисовать некий диалог MyClass2 dlg; причем КонтрлЛист сиго диалога..инициализировать элементами m_obArray..

воть...

пробывал передавать этот массив в конструктор MyClass2, а том копировать в местный CObArray (CObArray::Copy)... жрет слишком много ресурсов...

 

Автор: Earnest 17.5.2006, 17:36
Цитата(ПашкаКорчагин @  17.5.2006,  16:29 Найти цитируемый пост)
жрет слишком много ресурсов...

Каких ресурсов? У тебя там что, гигабайты?
С копированием массива указателей есть одна проблема: кто их удалять-то будет?
Подумай, может можно просто ссылку передать? 

Автор: ПашкаКорчагин 17.5.2006, 17:54
так и передавал ссылку...
нет не гигабайты... но процерос на 100% долго висел.. а потом и приложение зависло...
 

Автор: Earnest 17.5.2006, 18:02
Не только передавать как ссылку, но и использовать, не копировать то есть:

Код

class CMyClass2
{
public:
   CMyClass2(CObArray& a); m_Array(a) {}

private:
   CObArray& m_Array;
};


А приложение у тебя наверняка по другому поводу тормозит и виснет. 
Ищи тараканов. 

Автор: ПашкаКорчагин 18.5.2006, 13:48
ОК...спасибо..с этим разобрался...
возникла еще одна "непонятка"
...пытаюсь обработать LVN_COLUMNCLICK..
в первую очередь получить индекс избраной колонки..

Код

UINT nColumn=m_lstBookList.GetSelectedColumn();//error C2039: 'GetSelectedColumn' : is not a member of 'CListCtrl'


непонимаю...что значит not a member of 'CListCtrl'...

 

Автор: Earnest 18.5.2006, 13:52
Модератор: Пожалуйста, один топик - один вопрос.

 

Автор: DeadSoul 18.5.2006, 22:31
Цитата(ПашкаКорчагин @  18.5.2006,  13:48 Найти цитируемый пост)
непонимаю...что значит not a member of 'CListCtrl'...

Это означает, что у CListCtrl нет метода GetSelectedColumn 

Автор: ПашкаКорчагин 24.5.2006, 16:44
там просто была проблема с манифестом...
визард автоматом почиму то не создал сий жизнена важный документ 

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