Calendar

<<  平成24年 February  >>
SuMoTuWeThFrSa
2930311234
567891011
12131415161718
19202122232425
26272829123
45678910

投稿一覧をカレンダーで表示

Month List

Tag cloud

管理者ログイン

Silverlight 物体を移動させる(CanvasとGrid)

clock 2012年1月29日 23時15分 by author Sound Weaver

左がCanvas, 右がGrid

xaml

<Grid x:Name="LayoutRoot" Width="500" Height="250" Background="White">
        <Canvas x:Name="canvas" HorizontalAlignment="Left" Height="250" VerticalAlignment="Top" Width="250" Background="#FFFFC7C7" MouseMove="canvas_MouseMove">
            <TextBlock TextWrapping="Wrap" Text="Canvas" Canvas.Left="96" FontWeight="Bold"/>
            <Ellipse x:Name="ellipse1" Height="50" Stroke="Black" Width="50">
                <Ellipse.Fill>
                    <RadialGradientBrush Center="0.68,0.299" GradientOrigin="0.68,0.299">
                        <GradientStop Color="Red" Offset="1"/>
                        <GradientStop Color="White"/>
                    </RadialGradientBrush>
                </Ellipse.Fill>
            </Ellipse>
        </Canvas>
        <Grid x:Name="grid" Width="250" HorizontalAlignment="Right" VerticalAlignment="Top" Height="250" Background="#FFC7DFFF" MouseMove="grid_MouseMove">
            <TextBlock TextWrapping="Wrap" Text="Grid" FontWeight="Bold" VerticalAlignment="Top" d:LayoutOverrides="Width" HorizontalAlignment="Center"/>
            <Ellipse x:Name="ellipse2" Height="50" Stroke="Black" Width="50" HorizontalAlignment="Left" VerticalAlignment="Top">
                <Ellipse.Fill>
                    <RadialGradientBrush Center="0.68,0.299" GradientOrigin="0.68,0.299">
                        <GradientStop Color="#FF003EFF" Offset="1"/>
                        <GradientStop Color="White"/>
                    </RadialGradientBrush>
                </Ellipse.Fill>
            </Ellipse>
        </Grid>
    </Grid>

 

Canvasの場合

private void canvas_MouseMove(object sender, MouseEventArgs e)
{
      Point point = e.GetPosition(canvas);
      Canvas.SetLeft(ellipse1, point.X - ellipse1.Width / 2);
      Canvas.SetTop(ellipse1, point.Y - ellipse1.Height / 2);
}

 

Gridの場合

Gridの場合は物体のMarginLeftとMarginTopを変化させるので、

動かす物体のHorizontalAlignmentをLeft, VerticalAlignmentをTopにしておく。

private void grid_MouseMove(object sender, MouseEventArgs e)
{
     Point point = e.GetPosition(grid);
     ellipse2.Margin = new Thickness(point.X - ellipse1.Width / 2, point.Y - ellipse1.Height / 2, 0 ,0);
}

 







メディアページに新曲「Impermanence of Worldly Things」を追加しました

clock 2012年1月22日 23時05分 by author Sound Weaver

メディアページに新曲「Impermanence of Worldly Things」を追加しました

Impermanence of Worldly Thingsは訳すと諸行無常です。これは仏教用語で

この世の存在すべては、常に流動変化するものであり、一瞬といえども存在は同一性を

保持することができないことを意味します。

またまた思いつきで鐘の音を冒頭に入れましたが、そういえば平家物語の冒頭は

祗園精舎の鐘の声、諸行無常の響きあり。と後で思い出しました。






Emerson Lake Palmer 「 Tarkus(タルカス) 」

clock 2012年1月15日 23時04分 by author Sound Weaver

Emerson Lake Palmer 「 Tarkus(タルカス) 」

今日の大河ドラマで使用されてました。

 

オーケストラバージョン