コード例 #1
0
        private void OnMouseDownEvent(object sender, MouseEventArgs e)
        {
            FourierButton.IsEnabled = true;
            if (tbs.GetSelected() != null && tbs.GetSelected() != this)
            {
                tbs.GetSelected().FourierButton.IsEnabled = false;
            }
            win.SetSelectedWave(this);
            tbs.SetSelected(this);
            this.mouseDown = true;
            canvas.Children.Remove(selected);

            Point pOld = Mouse.GetPosition(canvas);

            xOld     = (int)pOld.X;
            selected = new Rectangle();

            selected.Height          = 150;
            selected.Width           = 1;
            selected.Fill            = Brushes.Black;
            selected.StrokeThickness = 1;
            selected.Opacity         = 0.3;

            Canvas.SetTop(selected, 0);
            Canvas.SetLeft(selected, pOld.X);

            canvas.Children.Add(selected);
        }
コード例 #2
0
        private IntPtr WndProc(IntPtr hwnd, int msg, IntPtr wParam, IntPtr lParam, ref bool handled)
        {
            switch (msg)
            {
            case WM_USER:
                //Console.WriteLine("WM_USER Called");
                Wave w = new Wave(this, tools);
                innerPanel.Children.Add(w);
                int[,] samples = w.GetSamples();
                tools.SetSelected(w);
                //for(int i = 0; i < samples.Length; ++i)
                //{
                //    Console.WriteLine(samples[i, 0]);

                //}
                //Console.WriteLine("Max Amp:" + w.maxAmp);
                break;
            }
            return(IntPtr.Zero);
        }