Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   Рисование с# (http://forum.oszone.net/showthread.php?t=196183)

Beyound 09-01-2011 19:50 1584650

Рисование с#
 
Здравствуйте, меня интересует такая тема. Скажем есть примеры что там собачка бегает по раб. столу и т.п. Меня интересует как чтонибудь такое-же реализовать. Изменение размеров окна под размер изображение - не катит ибо медленная операция особенно для сложных фигур. Особенно хотелось бы это под OpenGl (3D и 2D объекты) или хотябы DirectX. Желательно без прямого редактирования видеопамяти ибо не самый оптимальный метод на мой взгляд для C#, хотя если будет пример хотябы для одного полигона то сойдет и это.

Coutty 09-01-2011 20:31 1584689

Вы думаете, что там нечто особо сложное? Я думаю - простой анимированный GIF, наложенный на прозрачную форму.
Что-то вроде этого (только у меня PNG использовался - без анимации, соответственно):

MainWindow.xaml:
Код:

<Window x:Class="TransparentWindow.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525" AllowsTransparency="True" WindowStyle="None">
</Window>

MainWindow.xaml.cs:
Код:

namespace TransparentWindow
{
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();

            // 1.png - файл с прозрачностью
            this.Background = new ImageBrush(new BitmapImage(new Uri("1.png", UriKind.Relative)));
        }
    }
}

А уж перемещать окно и подменять в нужные моменты файлы изображений - это сами напишете.

Beyound 10-01-2011 20:15 1585496

а прозрачность такого рода над объектом OpenGl можно сделать? Ибо если скажем я включаю на форме TrancparancyKey (visual 2008 c#), а в этой форме находится объект OpenGl (я использую TAO framework) то он перестает прорисовываться как таковой - черный фон и все.

Delirium 11-01-2011 00:59 1585780

Coutty, ты забыл уточнить, что твой пример написан на WPF, а не на простом C# :)


Время: 03:56.

Время: 03:56.
© OSzone.net 2001-