Поиск:

Ответ в темуСоздание новой темы Создание опроса
> перегрузка функции на MFC, не работает 
:(
    Опции темы
interceptor
Дата 18.10.2005, 11:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 4.10.2005

Репутация: нет
Всего: нет



делаю перегрузку функции компилит нормально но при нажатии на кнопку
выдает ошибку.В чем косяк не знаю.
может скажите какие нибудь интересные функции для перегрузки
Код



void func(void){
    CListBox List;
    CString messtr="была вызвана функция void func(void)" ;
    List.AddString(messtr);
      }

void func(int i){
    CListBox List;
    CString messtr="была вызвана функция void func(int i)" ;
    List.AddString(messtr);
}

CString func(char c){
    CListBox List;
    CString messtr="была вызвана функция CString func(char c)" ;
    List.AddString(messtr);
    return 0;
}

int func(double){
    CListBox List;
    CString messtr="была вызвана функция int func(double)" ;
    List.AddString(messtr);
    return 0;
}

int func(float){
    CListBox List;
    CString messtr="была вызвана функция int func(float)" ;
    List.AddString(messtr);
    return 0;
}


CString func(CString str){
    CListBox List;
    CString s="была вызвана функция string func(CString c)";
    List.AddString(s);
    return 0;
}


void CperegruzkaDlg::OnBnClickedButton1()
{
        
    func();
    func(123);
    func("3.4");
    func('e');
    func("32");
    func(3.56);
    func("dfgdfg");
    
    }



Это сообщение отредактировал(а) Coocky - 18.10.2005, 11:26
PM MAIL   Вверх
Coocky
Дата 18.10.2005, 11:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


GUI гуру
****


Профиль
Группа: Участник Клуба
Сообщений: 2879
Регистрация: 16.2.2004
Где: Украина. Запорожь е

Репутация: 25
Всего: 62



interceptor
М
 
Весь код помещай в теги Код

Далее запусти в режиме отладки (F5), и посмотри в каком месте вылетает( дай сюда код, когда прервется прога-она покажет место.)
Скорее всего проблема в неправильной инициализации
Добавлено @ 11:29
Код

CListBox List;
    CString messtr="была вызвана функция int func(float)" ;
    List.AddString(messtr);
    return 0;


А где Create метод ListBox_a? smile smile
Все понятно, батенька, вам нужно учить МФС! smile


--------------------
Верю в смерть после жизни, в любовь после секса ,в крем после бритья smile        
PM ICQ   Вверх
interceptor
Дата 19.10.2005, 11:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 4.10.2005

Репутация: нет
Всего: нет



зачем мне вызывать Create() я использую dialog based
listbox уже создан и присвоено имя List только я не понимаю почему
list работает в обработчике кнопки но не работает в функции?
PM MAIL   Вверх
Coocky
Дата 19.10.2005, 12:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


GUI гуру
****


Профиль
Группа: Участник Клуба
Сообщений: 2879
Регистрация: 16.2.2004
Где: Украина. Запорожь е

Репутация: 25
Всего: 62



interceptor
Цитата(interceptor @ 19.10.2005, 11:43)
зачем мне вызывать Create() я использую dialog based
listbox уже создан и присвоено имя List только я не понимаю почему

CListBox List;// Что это? smile
CString messtr="была вызвана функция int func(float)" ;
List.AddString(messtr);
return 0;



--------------------
Верю в смерть после жизни, в любовь после секса ,в крем после бритья smile        
PM ICQ   Вверх
Coocky
Дата 19.10.2005, 12:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


GUI гуру
****


Профиль
Группа: Участник Клуба
Сообщений: 2879
Регистрация: 16.2.2004
Где: Украина. Запорожь е

Репутация: 25
Всего: 62



Цитата(interceptor @ 19.10.2005, 11:43)
только я не понимаю почему
list работает в обработчике кнопки но не работает в функции?

smile
Обработчик кнопки-это и есть функция!!! smile
Молодой человек, либо вы поясняете конкретней, либо я удаляю тему.
Хватит бред городить. Изучите сначала основы МФС. Как можно создавать обьект CList Boxбез Create, если вы обьявляете обьект внутри функции?
А если вы создали обьект с помощью WYSIWYG, так зачем вы обьявляете обьект(уже другой) внутри функции?


Цитата(interceptor @ 19.10.2005, 11:43)
зачем мне вызывать Create() я использую dialog based

Я вот тоже так думаю..... И давай те прекратим бесмысленые споры!
Хотите помощи-просите, хотите поспорить-я закрою и удалю тему, а вы останетесь со своей ошибкой..


--------------------
Верю в смерть после жизни, в любовь после секса ,в крем после бритья smile        
PM ICQ   Вверх
interceptor
Дата 19.10.2005, 16:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 4.10.2005

Репутация: нет
Всего: нет



CListBox List;-это я написал потому что он не понимал что это List.AddString(messtr);
а точнее что такое List хотя он уже создан в dialog based
PM MAIL   Вверх
Coocky
Дата 19.10.2005, 16:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


GUI гуру
****


Профиль
Группа: Участник Клуба
Сообщений: 2879
Регистрация: 16.2.2004
Где: Украина. Запорожь е

Репутация: 25
Всего: 62



smile


Цитата(interceptor @ 19.10.2005, 16:10)
CListBox List;-это я написал потому что он не понимал что это List.AddString(messtr);

Такого не может быть!
Смотри- ты рисуешь на диалоге ЛистБокс. Затем нажимаешь правой кнопкой на нем, и в меню выбираешь Add variable(добавить переменную.) Вводишь ее имя.( к примеру List) Жмешь Ок.
У тебя в классе появится переменная CListBox List. Автоматом. теперь можешь делать
Код


    CString messtr="была вызвана функция int func(float)" ;
    List.AddString(messtr);
    return 0;


Можно и без переменной.
Код

//Получаем указатель на свой листбокс

CListBox*m_list=(CListBox*)GetDlgItem (ID твоега листбокса т.е. индефикатор);

    CString messtr="была вызвана функция int func(float)" ;

   m _list->AddString(messtr);

    return 0;


А ты что делал?
Ты просто создавал еще один обьект типа CListBox..
Влт и вылетал, т.к. Cretate не делал..
Почитай внимательно, как нужно работать с диалогом..

Это сообщение отредактировал(а) Coocky - 19.10.2005, 16:20


--------------------
Верю в смерть после жизни, в любовь после секса ,в крем после бритья smile        
PM ICQ   Вверх
interceptor
Дата 19.10.2005, 16:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 4.10.2005

Репутация: нет
Всего: нет



все я исправил свою шибку свои функции сделал членами класса
CperegruzkaDlg и мой List обнаружился
всем спасибо !!!
PM MAIL   Вверх
Coocky
Дата 19.10.2005, 16:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


GUI гуру
****


Профиль
Группа: Участник Клуба
Сообщений: 2879
Регистрация: 16.2.2004
Где: Украина. Запорожь е

Репутация: 25
Всего: 62



Цитата(interceptor @ 19.10.2005, 16:49)
все я исправил свою шибку свои функции сделал членами класса
CperegruzkaDlg и мой List обнаружился

smile smile smile
Блин, зря возился smile
Ну можно достучаться из ЛЮБОГО места проги до ЛЮБОГО элемента..
Для этого достаточно знать С++ smile



--------------------
Верю в смерть после жизни, в любовь после секса ,в крем после бритья smile        
PM ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




[ Время генерации скрипта: 0.0525 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.