2016-03-29 2 views
1

im создание приложения в микрофоне. Visual Studio, но у меня есть проблема с этим кодом. Предполагалось, что это приложение для рисования, такое как краска. Эта часть кода делает линию/чертеж, у меня есть проблема со следующим:Приложение для рисования - рисунок void не работает

  • «Графика g = Графика :: FromImage (iBitMapImage);» ->

Ошибка C2664: 'System :: Drawing :: Graphics^System :: Drawing :: Graphics :: FromImage (System :: Drawing :: Image ^)': не может преобразовать аргумент 1 из 'System: : Рисунок :: изображение»в 'System :: Drawing :: изображение^е: \ programovanie \ ikid \ kreslenie \ testing123l \ testing123l \ MyForm1.h 215 1 testing123l

  • «pictureBox-> изображение = растровый; " ->

IntelliSense: функция "System :: Окна :: Forms :: PictureBox :: Image :: набор" не может быть вызвана с данными типами аргументов список аргументов являются: (System :: Рисование :: Bitmap) тип объекта: System :: Окна :: Forms :: PictureBox^е: \ Programovanie \ iKID \ Kreslenie \ testing123l \ testing123l \ MyForm1.h 218 4 testing123l

Im совершенно новой для этого типа C++, до теперь я делал некоторые простые вещи, такие как cin, cout, sort, текстовые игры и подобные вещи ...

private: System::Void pictureBox_MouseMove(System::Object^ sender, S ystem::Windows::Forms::MouseEventArgs^ e) 
    { 
    if (e->Button == System::Windows::Forms::MouseButtons::Left) 
    { 
     Image ^iBitMapImage; 
     Graphics g = Graphics::FromImage(iBitMapImage); 
     g.DrawLine(Pens::Black, oldPosition, e->Location); 
     oldPosition = e->Location; 
     pictureBox->Image = bitmap; 
    } 
} 

ответ

0

Ваша проблема вызвана попыткой создать объект типа «Изображение». Класс Image не может быть создан, потому что он является абстрактным и имеет методы, которые не реализованы.

Вы можете использовать ручку для ссылочного типа: Image^ iBitMapImage; (обратите внимание на каротин). Чтобы лучше понять, как использовать класс Image, проверьте примеры на веб-сайте MSDN. https://msdn.microsoft.com/en-us/library/system.drawing.image(v=vs.110).aspx

+0

Ну, я добавил морковь, одна ошибка устранена ... разве вы ничего не знаете о двух других ошибках? :) –

+0

Графика также является абстрактным классом, так что это та же проблема, что и изображение - снова используйте дескриптор ссылки. Я не уверен во втором, но кажется, что вы пытаетесь использовать объект Bitmap, где вы должны использовать Image ^. Может быть, вы хотели использовать iBitMapImage? – Moreira

Смежные вопросы