LINUX.ORG.RU

Mono + Graphics


0

0

Доброго времени суток. У нас на факультете изучают C# в MS Visual Studio 2008. Начали недавно, только что проходили программное рисование в объекте picturebox. Но вот какие модули нужно подключать и в каком соответствующем объекте рисовать в MonoDevelop 2.4? Ни image ни drawing area не поддерживают необходимых функций вроде FillRectangle и прочих. Mono 2.6.7

using System;
using Gtk;
using System.Drawing.Drawing2D;
using System.Drawing.Imaging;
using System.Drawing.Text;
Спасибо.


Ищи доки по Cairo. Работает в Mono прекрасно. Конечно в Gtk окне )

vertexua ★★★★★
()
Ответ на: комментарий от annulen

Как бы я чёткий вопрос задал ;) Спасибо.

GeniX
() автор топика
Ответ на: комментарий от zakot

Хотя нет вру, в mono это надо подклюать, а так оно использует Gtk и Cairo

zakot
()

В mono'вском Windows.Forms рисование делается так же, как и в .net'овском - получается каким-либо образом графический контекст в виде объекта Graphics, у него вызываются методы FillRectangle и прочие.

dmitry_vk ★★★
()
Ответ на: комментарий от dmitry_vk

> В mono'вском Windows.Forms рисование делается так же, как и в .net'овском

Только почему-то в linux такое рисование в несколько раз медленнее чем в .NET под windows на одном и том же компьютере. Драйвера NVIDIA проприетарные.

kamre ★★★
()
Ответ на: комментарий от GeniX

Насколько знаю, MonoDevelop умеет импортировать проекты студии. Возьми готовый и простой проект без всяких изысков типа PInvoke. Должно сработать.

dave ★★★★★
()
Ответ на: комментарий от dave

Исходя из этого я понял лишь то, что через Gtk# это сделать нельзя. Потому что проект импортируется, компилируется, редактируется.

GeniX
() автор топика
Ответ на: комментарий от GeniX

>что через Gtk# это сделать нельзя

Через Gtk# нельзя использовать System.Drawing, там надо использовать Mono.Cairo. Примеры для Gtk# есть на сайте mono.

Да, но на чём оно делается? Ни один компонент не поддерживает программное рисование.

Да на чем угодно. Все точно так же, как и .net'овском Windows.Forms. Вешаете обработчик на OnPaint, в нем во втором аргументе есть свойство Graphics.

dmitry_vk ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.