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));
}
c# работа с изображениями
тоесть у меня то будет загружаться 6 картинок,+ потом при изменении состояния нужно будет изменять старую, просто подгружать новую картинку на место старой?
тыкните носом , где почитать побольше про графику
Цитата: whitebrain
Делаю прогу с обедающими философами,решил визуализацию сделать,вот в какую сторону вообще копать с изображениями.
тоесть у меня то будет загружаться 6 картинок,+ потом при изменении состояния нужно будет изменять старую, просто подгружать новую картинку на место старой?
тыкните носом , где почитать побольше про графику
тоесть у меня то будет загружаться 6 картинок,+ потом при изменении состояния нужно будет изменять старую, просто подгружать новую картинку на место старой?
тыкните носом , где почитать побольше про графику
На чём предполагается писать окошки? Windows Forms, WPF/Silverlight?
Если WinForms, то смотреть в сторону события Paint.
WPF/Silverlight - тут выбор то побольше будет. Всё зависит от того, на сколько нужно усложнять интерфейс. Как вариант - Canvas + какие-либо подходящие контейнеры для картинок. Да и не только Canvas может подойти тут. Всё зависит от того, на сколько хочется красивости.
на WF ,ну как, я так понимаю ,самый простой способ загружать готовые изображения из ресурсов или нет?
Цитата: whitebrain
на WF ,ну как, я так понимаю ,самый простой способ загружать готовые изображения из ресурсов или нет?
Да нету там особой разницы по загрузке из ресурсов.
Своп двумя кнопками картинки на WinForms(сами картинки храняться в фале ресурсов Resource1):
Код:
То же самое на 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;
}
{
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>
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>