Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Виктор27
11 / 11 / 2
Регистрация: 21.11.2013
Сообщений: 326
#1

Как вызвать из метода метод? - C++

10.07.2015, 13:52. Просмотров 310. Ответов 6
Метки нет (Все метки)

Здравствуйте. Прошу Вас помочь. Как мне вызвать из метода Set метод Draw? Мне надо передать объект A в Draw (у которого есть координаты x и y).

C++
1
2
3
4
5
6
7
8
9
10
11
12
void My_Point:: Set(int xx ,int yy)                      // Сохранение координат x и y
{
   x=xx;
   y=yy;
   A->Draw(this->pictureBox1); // НЕ РАБОТАЕТ
}
 
void My_Point:: Draw(System::Windows::Forms::PictureBox ^Pbx)            // Присвоение координат картринке
    {
        Pbx->Left = x;
        Pbx->Top  = y;
    }
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.07.2015, 13:52
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как вызвать из метода метод? (C++):

Вызвать метод базового класса из метода наследника - C++
Есть базовый класс с виртуальным методом, выводящим значение его полей. В классе-наследнике есть метод с таким же названием, и он также...

Как вызвать метод класса? - C++
User.cpp User::User(string name): name(name), price(0), amount(0) { cout <<"User has been create"; } ...

Как вызвать метод родительского класса; - C++
Собственно вопрос; Есть класс a и b; Класс b унаследован от класса a; И как теперь из класса b вызвать функцию класса a;

Как вызвать метод объекта из контейнера? - C++
Есть абстрактный класс E, производный от CObject, в нем чистая виртуальная войдовская функция. Создал динамические объекты классов, которые...

Как вызвать метод для for_each? - C++
Здравствуйте. Мне нужно вызвать один метод для коллекции объектов. Что то вроде такого std::for_each( container.begin(),...

Как правильно вызвать метод в С++ и как использовать команду goto в default - C++
#include <iostream>; #include <conio.h>; using namespace std; void main() { setlocale(LC_ALL, "Rus"); calculate(); ...

6
DrOffset
7349 / 4449 / 1009
Регистрация: 30.01.2014
Сообщений: 7,292
10.07.2015, 14:19 #2
Виктор27,
C++
1
2
3
4
5
6
void My_Point:: Set(int xx ,int yy)   
{
   x=xx;
   y=yy;
   Draw(this->pictureBox1); // или this->Draw(this->pictureBox1);
}
1
Виктор27
11 / 11 / 2
Регистрация: 21.11.2013
Сообщений: 326
10.07.2015, 14:34  [ТС] #3
DrOffset, Не помогло. На всякий выкладываю файл. Вдруг я некорректно объяснился))
0
Вложения
Тип файла: rar Super_Point.rar (6.96 Мб, 5 просмотров)
DrOffset
7349 / 4449 / 1009
Регистрация: 30.01.2014
Сообщений: 7,292
10.07.2015, 16:08 #4
Цитата Сообщение от Виктор27 Посмотреть сообщение
Не помогло.
Значит дело не в этом.
Во-первых скажи мне что такое this->Picturebox, я его в объявлении класса не вижу.
Во-вторых ошибку процитировать сюда не помешает.
В третьих - это не С++, а С++\CLI.

Добавлено через 4 минуты
Виктор27, все дошло. У тебя Picturebox1 определен не в My_Point, а выше по уровню, классе Form1. Как ты собрался его передавать-то? Либо протаскивай его через метод Set третьим параметром.
Вызов метода из другого метода тут вообще не при делах. Читайте сообщения, которые вам компилятор пишет, е-мое
0
Виктор27
11 / 11 / 2
Регистрация: 21.11.2013
Сообщений: 326
10.07.2015, 20:09  [ТС] #5
Цитата Сообщение от DrOffset Посмотреть сообщение
Либо протаскивай его через метод Set третьим параметром.
DrOffset, ))) Не понимаю. Подскажите пожалуйста, что-то я туплю.

Добавлено через 1 минуту
У меня задание чтобы метод Draw вызывался из Set
0
DrOffset
7349 / 4449 / 1009
Регистрация: 30.01.2014
Сообщений: 7,292
10.07.2015, 20:21 #6
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от Виктор27 Посмотреть сообщение
Не понимаю.
C++
1
2
3
4
5
6
void My_Point::Set(int xx ,int yy, System::Windows::Forms::PictureBox ^Pbx)   
{
   x=xx;
   y=yy;
   Draw(Pbx); 
}
Везде, где Set вызывался так
C++
1
A->Set(a, b);
теперь вызывать так
C++
1
A->Set(a, b, this->pictureBox1);
a и b это какие-то аргументы x и y.
1
Виктор27
11 / 11 / 2
Регистрация: 21.11.2013
Сообщений: 326
10.07.2015, 20:33  [ТС] #7
А прототип значит будет выглядеть вот так:
C++
1
void Set(int, int, System::Windows::Forms::PictureBox ^Pbx);
DrOffset, Большущее спасибо))) Фууууууу, ну наконец)))
0
10.07.2015, 20:33
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.07.2015, 20:33
Привет! Вот еще темы с ответами:

Как вызвать метод вектора из динамического массива? - C++
vector<some_type> *t=new vector<int> ; как вызвать метод из структуры\класса some_type? как разыменовать этот указатель, я уже как не...

Как вызвать метод одного класса в другом? - C++
У меня есть два отдельных класса. Вопрос, как вызвать метод одного класса в другом? что-то слышал о экземпляре класса, указатели, но так...

Как вызвать метод из указателя на вектор пользовательского типа? - C++
#include <iostream> #include <vector> #include <string> using namespace std; struct Client { vector <string> login; vector...

Как вызвать прегруженный const метод для статического объекта - C++
class A { public: A() { cout << "A()" << endl; } ~A() { cout << "~A()" << endl; } void foo() { cout << "foo 1_1"; } ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru