1

カメラが写真を撮ろうとしているときに2本の白いバー[]が表示されるWindowsPhoneのデフォルトのカメラアプリケーションを模倣したいと思います。私は研究を続けていますが、自分のアプリケーションにそのような機能を実装する方法がわかりません。私はすべてのカメラボタンを設定し、すべてが正しく機能しますが、これは私が絶対に望んでいる機能です。バーを表示してカメラのファインダーに隠し、DispatcherTimerを使用してタイミングを制御して表示できるようにします。唯一の問題は、これを行う方法がわからないので、カメラが写真を撮る直前にDispatcherTimer Tickイベントをアクティブにするだけですか?

4

1 に答える 1

2

フォーカスバーを表示する最も簡単な方法は、開いたブラケットと閉じたブラケット「[]」が付いたテキストブロックを使用することです。これは、あるポイントにフォーカスするときに表示および非表示にします。ユーザーがポイントをタップすると、次のようになります。

Point tapLocation = e.GetPosition(viewfinderCanvas);

// Position the focus brackets with the estimated offsets.
focusBrackets.SetValue(Canvas.LeftProperty, tapLocation.X - 30);
focusBrackets.SetValue(Canvas.TopProperty, tapLocation.Y - 28);

// Determine the focus point.
double focusXPercentage = tapLocation.X / viewfinderCanvas.Width;
double focusYPercentage = tapLocation.Y / viewfinderCanvas.Height;

// Show the focus brackets and focus at point.
focusBrackets.Visibility = Visibility.Visible;
cam.FocusAtPoint(focusXPercentage, focusYPercentage);

実装全体を見つけることができるMSDNから取得したコード:

方法:WindowsPhone用のアプリケーションでCameraFocusを使用する

于 2012-08-30T07:02:04.343 に答える