Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

c# работа с изображениями

48K
09 марта 2011 года
whitebrain
10 / / 08.09.2009
Делаю прогу с обедающими философами,решил визуализацию сделать,вот в какую сторону вообще копать с изображениями.
тоесть у меня то будет загружаться 6 картинок,+ потом при изменении состояния нужно будет изменять старую, просто подгружать новую картинку на место старой?
тыкните носом , где почитать побольше про графику
2.1K
09 марта 2011 года
Norgat
452 / / 12.08.2009
Цитата: whitebrain
Делаю прогу с обедающими философами,решил визуализацию сделать,вот в какую сторону вообще копать с изображениями.
тоесть у меня то будет загружаться 6 картинок,+ потом при изменении состояния нужно будет изменять старую, просто подгружать новую картинку на место старой?
тыкните носом , где почитать побольше про графику



На чём предполагается писать окошки? Windows Forms, WPF/Silverlight?

Если WinForms, то смотреть в сторону события Paint.

WPF/Silverlight - тут выбор то побольше будет. Всё зависит от того, на сколько нужно усложнять интерфейс. Как вариант - Canvas + какие-либо подходящие контейнеры для картинок. Да и не только Canvas может подойти тут. Всё зависит от того, на сколько хочется красивости.

48K
10 марта 2011 года
whitebrain
10 / / 08.09.2009
на WF ,ну как, я так понимаю ,самый простой способ загружать готовые изображения из ресурсов или нет?
2.1K
10 марта 2011 года
Norgat
452 / / 12.08.2009
Цитата: whitebrain
на WF ,ну как, я так понимаю ,самый простой способ загружать готовые изображения из ресурсов или нет?



Да нету там особой разницы по загрузке из ресурсов.

Своп двумя кнопками картинки на WinForms(сами картинки храняться в фале ресурсов Resource1):

 
Код:
private void button1_Click(object sender, EventArgs e)
        {
            this.pictureBox1.Image = ((System.Drawing.Image)(Resource1._341));
        }

        private void button2_Click(object sender, EventArgs e)
        {
            this.pictureBox1.Image = ((System.Drawing.Image)(Resource1._343));
        }


То же самое на WPF:
 
Код:
private void Button_Click(object sender, RoutedEventArgs e)
        {
            MyImg.Source = ((Image)this.FindResource("KImg1")).Source;
        }

        private void Button_Click_1(object sender, RoutedEventArgs e)
        {
            MyImg.Source = ((Image)this.FindResource("KImg2")).Source;
        }


Картинки храняться как статичные ресурсы в файле окна, соотв. Xaml разметка:
Код:
<Window x:Class="WPF.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="Window1" Height="300" Width="500">
    <Window.Resources>
        <Image x:Key="KImg1" Source="/Img/341.gif"/>
        <Image x:Key="KImg2" Source="/Img/343.gif"/>
    </Window.Resources>
    <Grid>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="150"></ColumnDefinition>
            <ColumnDefinition></ColumnDefinition>
        </Grid.ColumnDefinitions>
       
        <StackPanel Grid.Column="0">
            <Button Click="Button_Click">B1</Button>
            <Button Click="Button_Click_1">B2</Button>
        </StackPanel>
       
        <Canvas Grid.Column="1">
            <Image Name="MyImg" Width="50" Height="50" Source="/Img/341.gif" Canvas.Left="191" Canvas.Top="111" />
        </Canvas>
    </Grid>
</Window>
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог