powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Выделение части картинки
11 сообщений из 11, страница 1 из 1
Выделение части картинки
    #37464289
vseok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В общем ребят я читаю книжку по WPF но всеравно еще не понял как сделать следующее :
Есть картинка ( карта россии к примеру) , и нужно чтоб регионы на карти реагировали на событие MouseEnter (наведения мыши), а регировать они должны так чтоб выделялись их границы. Подскажите мне плз.
...
Рейтинг: 0 / 0
Выделение части картинки
    #37464514
vseok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вот как тут http://www.odnoselchane.ru/ сделать надо примерно , можно и в 2д
...
Рейтинг: 0 / 0
Выделение части картинки
    #37464522
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Выделение части картинки
    #37465513
ДобрыйКот
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пока в голове. Сделать копию этой картинки в ней залить регион какой нить в паинте допустим уникальным цветом (черный к примеру 0;0;0) сохранить пройтив фором по этой кратинке и считать координаты закрасившегося региона и каким то образом сохранить, либо иметь массив с координатами областей. И т.п для всех регионов. а финт с подсветкой уже руками - координыты массива знаете где в данный момент мышка стоит знаете, закрашивать умеете.
...
Рейтинг: 0 / 0
Выделение части картинки
    #37466468
vseok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
непонял, что вы имеете под фором?
...
Рейтинг: 0 / 0
Выделение части картинки
    #37468088
vseok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SeVa обьясни плиз, на ссылке со второго шага непонятно, что делать надо (( Шаблон я создал уже.
...
Рейтинг: 0 / 0
Выделение части картинки
    #37468258
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что конкретно неясно?
...
Рейтинг: 0 / 0
Выделение части картинки
    #37468374
vseok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
задача решена, т.к. обьектов не много, нарисовал через expression blend граница с помощью path .
но всеравно интересно почему неработает то что ты мне дал ...
вот как я делаю : Вначале делаю шаблон, потом применяю шаблон к своим Тooglebutton , и в COntent туглабутона пишу свой путь который получился от Path , все правильно ведь ??? но реакции ноль почему то ..
...
Рейтинг: 0 / 0
Выделение части картинки
    #37468455
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Покажи xaml.
...
Рейтинг: 0 / 0
Выделение части картинки
    #37471776
vseok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
<Window
	xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
	xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
	x:Class="WpfApplication6.MainWindow"
	x:Name="Window"
	Title="MainWindow"
	Width="640" Height="480">
	<Window.Resources>
		<ControlTemplate x:Key="MapButton" TargetType="{x:Type ToggleButton}">
			<Grid Margin="0,0,-137,-156">
				<Grid.ColumnDefinitions>
					<ColumnDefinition Width="0.063*"/>
					<ColumnDefinition Width="0.937*"/>
				</Grid.ColumnDefinitions>
				<VisualStateManager.VisualStateGroups>
					<VisualStateGroup x:Name="CommonStates">
						<VisualState x:Name="Normal"/>
						<VisualState x:Name="MouseOver">
							<Storyboard>
								<DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="PathCommonStates">
									<EasingDoubleKeyFrame KeyTime="0:0:1" Value="0.3"/>
								</DoubleAnimationUsingKeyFrames>
							</Storyboard>
						</VisualState>
						<VisualState x:Name="Pressed"/>
						<VisualState x:Name="Disabled"/>
					</VisualStateGroup>
					<VisualStateGroup x:Name="CheckStates">
						<VisualState x:Name="Checked">
							<Storyboard>
								<DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="PathCheckStates">
									<EasingDoubleKeyFrame KeyTime="0:0:1" Value="0.3"/>
								</DoubleAnimationUsingKeyFrames>
							</Storyboard>
						</VisualState>
						<VisualState x:Name="Unchecked"/>
						<VisualState x:Name="Indeterminate"/>
					</VisualStateGroup>
				</VisualStateManager.VisualStateGroups>
				<Path x:Name="PathCommonStates" 
				Fill="Black" 
				Stretch="Fill" 
				Stroke="Black"
				Height="{TemplateBinding Height}" 
				HorizontalAlignment="{TemplateBinding HorizontalAlignment}" 
				Margin="34,113,81.992,43" 
				VerticalAlignment="{TemplateBinding VerticalAlignment}" 
				Width="{TemplateBinding Width}" 
				UseLayoutRounding="{TemplateBinding UseLayoutRounding}" 
				Data="{TemplateBinding Content}" 
				Opacity="0" Grid.Column="1"/> 
				<Path x:Name="PathCheckStates" 
				Fill="White" 
				Stretch="Fill" 
				Stroke="Black" 
				Height="{TemplateBinding Height}" 
				HorizontalAlignment="{TemplateBinding HorizontalAlignment}" 
				Margin="34,113,81.992,43" 
				VerticalAlignment="{TemplateBinding VerticalAlignment}" 
				Width="{TemplateBinding Width}" 
				UseLayoutRounding="{TemplateBinding UseLayoutRounding}" 
				Data="{TemplateBinding Content}" 
				Opacity="0" Grid.Column="1"/> 
			</Grid>
		</ControlTemplate>
	</Window.Resources>

	<Grid x:Name="LayoutRoot" RenderTransformOrigin="0.500,0.500">
		<Canvas x:Name="Canva"  Margin="35,37,59,84"/>
		<Image Margin="44,46,82,84" Source="BelgiumMap.png"/>
		<ToggleButton Template="{StaticResource MapButton}"
		Content="M249.5,117.5 C289.5,179.5 328.5,167.50002 285.5,189.50009 242.5,211.50015 304.49951,222.50019 241.49972,211.50016 178.49993,200.50012 186.4999,201.50044 175.49994,185.50035 164.49998,169.50026 209.5,55.5 249.5,117.5 z" Margin="186,92,233,193"/>


	</Grid>
</Window>
...
Рейтинг: 0 / 0
Выделение части картинки
    #37472172
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
первый принцип программирования - не ломать, то что работает. Шаблон оставить в первозданном виде, смещения, растяжения и прочее, задавать самим кнопкам
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Выделение части картинки
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]