|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
24.06.2011, 12:34 | #1 | |
Старожил
Регистрация: 06.08.2009
Сообщений: 2,992
|
XNA: Рисование маслом по контролу
Второй день уже бьюсь над тем, чтобы сделать хотя бы простенькую программу с XNA. Рисование на весь экран меня не устраивает, поэтому я делаю класс, наследованный от Control.
Код:
Ошибка на предпоследней строчке, функция DrawPrimitives(): Цитата:
|
|
24.06.2011, 18:27 | #2 |
Дружите с Linq ;)
Форумчанин
Регистрация: 15.10.2008
Сообщений: 823
|
Код:
Не давай организму поблажки, каждый день тренируй его в шашки..
|
27.06.2011, 12:43 | #3 | |
Старожил
Регистрация: 06.08.2009
Сообщений: 2,992
|
О, спасибо огромное. Ошибка, наконец, пропала.
Цитата:
Я нашёл замену классу-наследнику Control-а - Viewport. :) Вот что получилось. Ошибок не выдаёт, OnPaint() выполняется, но без видимых результатов. Код:
|
|
27.06.2011, 15:48 | #4 |
Старожил
Регистрация: 06.08.2009
Сообщений: 2,992
|
Ok, я упростил программу, но ясности это не внесло.
Код:
Если MainForm.DoubleBuffered - false, то в паузах между прорисовками (например, когда окно перетаскивается) оно остаётся чёрным. Если true - стандартным цветом. А мне хотя бы просто залить окно. :) |
27.06.2011, 16:09 | #5 |
Форумчанин
Регистрация: 25.09.2009
Сообщений: 525
|
http://www.intuit.ru/department/se/i...1/3.html#sect6
там как раз для начала закрашивают форму |
27.06.2011, 16:55 | #6 |
Старожил
Регистрация: 06.08.2009
Сообщений: 2,992
|
Спасибо, как раз принялся за этот пример.
Проблема оказалась в строчке Application.Idle += delegate { Invalidate (); }; Она была со старого примера, и из-за неё было мерцание. Теперь буду пытаться нарисовать линию. :) |
28.06.2011, 12:36 | #7 |
Старожил
Регистрация: 06.08.2009
Сообщений: 2,992
|
Viewport таки не катит. Вместо того, чтобы просто залить чёрным область окна 100x100, программа заполняет всё окно мусором, и уже поверх мусора рисует чёрный квадрат.
Код:
|
28.06.2011, 15:03 | #8 |
Старожил
Регистрация: 06.08.2009
Сообщений: 2,992
|
Уже помогли. Сделал через контрол - так хотя бы работает. Теперь снова буду пытаться нарисовать линию. :)
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
XNA | dampirik | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 5 | 22.06.2011 01:59 |
Как обратиться к контролу на листе? | Maryver | Microsoft Office Excel | 1 | 22.04.2011 18:47 |
C# и XNA, посоветуйте литературу | Пепел Феникса | Общие вопросы .NET | 21 | 29.03.2011 02:54 |
XNA 4, C# | stck | C# (си шарп) | 1 | 01.02.2011 04:28 |
C# XNA | Cpluser | Общие вопросы .NET | 1 | 19.12.2009 15:07 |