Picproje Elektronik Sitesi

PROGRAMLAMA DİLLERİ => Visual C# => Konuyu başlatan: YıldırımBey - 23 Aralık 2012, 22:22:18

Başlık: Yön tuşlarını kontrol etmek...
Gönderen: YıldırımBey - 23 Aralık 2012, 22:22:18
Yön tuşlarına bastıgımda forma eklemiş oldugum 4 butonu aktif etmek istiyorum.Kod aşağıda fakat hata veriyor.
Hata:type or namespace definition,or end-of-file expected ve } expected daha yenıyım ufak bır yerde kutuphane veya algorıtma hatası yapmış olabilirm.Şimdiden teşekkürler.


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using System.IO;

namespace WindowsFormsApplication9
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
{
          protected override bool ProcessDialogKey(Keys keyData)
        {
            if (keyData == Keys.Up)
            {
               button1_Click(button1, EventArgs.Empty);
               return false;
            }if (keyData == Keys.Left)
            {
               button2_Click(button2, EventArgs.Empty);
               return false;
            }
            if (keyData == Keys.Down)
            {
               button3_Click(button3, EventArgs.Empty);
               return true;
            }
            if (keyData == Keys.Right)
            {
               button4_Click(button4, EventArgs.Empty);
               return false;
            }
            return base.ProcessDialogKey(keyData);
        }






        }

       
    }
}
Başlık: Ynt: Yön tuşlarını kontrol etmek...
Gönderen: semih - 25 Aralık 2012, 11:47:24
Anladığım kadarıyla forma yerleştirdiğin butonları klavyeden kontrol etmek istiyorsun.Bunun için formun interval'ı true olmalı. Daha sonra
button1_Click(button1, EventArgs.Empty); kodunu aşağıdaki gibi değiştir
button1.PerformClick();
Başlık: Ynt: Yön tuşlarını kontrol etmek...
Gönderen: datasheet - 06 Ocak 2013, 17:29:12
Alıntı yapılan: semih - 25 Aralık 2012, 11:47:24
Anladığım kadarıyla forma yerleştirdiğin butonları klavyeden kontrol etmek istiyorsun.Bunun için formun interval'ı true olmalı. Daha sonra
button1_Click(button1, EventArgs.Empty); kodunu aşağıdaki gibi değiştir
button1.PerformClick();

peki intervali nasıl true yapıyoruz? normalde bir değer atamıyomuyuz?
Başlık: Ynt: Yön tuşlarını kontrol etmek...
Gönderen: datasheet - 12 Ocak 2013, 14:46:30
arkadaşlar yeni konu açmama gerek yok buradan yardımcı olurmusunuz?
Başlık: Ynt: Yön tuşlarını kontrol etmek...
Gönderen: fatih6761 - 12 Ocak 2013, 15:31:05
Hocam, parantezlerde fazlalık var. Şu kısmı
  private void Form1_Load(object sender, EventArgs e)
{
{


aşağıdaki gibi düzeltin.
  private void Form1_Load(object sender, EventArgs e)
{
}

Koda geri dönersek, if ler ile ortalığı bulandırmaya gerek yok, biliyorsanız swith-case yapısı bu iş için daha uygun.

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Media;
using System.IO;

namespace SoundDecoder
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
        }
       
        protected override bool ProcessDialogKey(Keys keyData)
        {
            switch (keyData)
            {
                case Keys.Left:
                    button1.PerformClick();
                    break;
                case Keys.Right:
                    button2.PerformClick();
                    break;
                case Keys.Up:
                    button3.PerformClick();
                    break;
                case Keys.Down:
                    button4.PerformClick();
                    break;
            }

            return base.ProcessDialogKey(keyData);
        }
    }
}
Başlık: Ynt: Yön tuşlarını kontrol etmek...
Gönderen: datasheet - 12 Ocak 2013, 18:52:51
Alıntı yapılan: fatih6761 - 12 Ocak 2013, 15:31:05
Hocam, parantezlerde fazlalık var. Şu kısmı
  private void Form1_Load(object sender, EventArgs e)
{
{


aşağıdaki gibi düzeltin.
  private void Form1_Load(object sender, EventArgs e)
{
}

Koda geri dönersek, if ler ile ortalığı bulandırmaya gerek yok, biliyorsanız swith-case yapısı bu iş için daha uygun.

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Media;
using System.IO;

namespace SoundDecoder
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
        }
       
        protected override bool ProcessDialogKey(Keys keyData)
        {
            switch (keyData)
            {
                case Keys.Left:
                    button1.PerformClick();
                    break;
                case Keys.Right:
                    button2.PerformClick();
                    break;
                case Keys.Up:
                    button3.PerformClick();
                    break;
                case Keys.Down:
                    button4.PerformClick();
                    break;
            }

            return base.ProcessDialogKey(keyData);
        }
    }
}


form dosyasını eklermisiniz rica etsem ?
Başlık: Ynt: Yön tuşlarını kontrol etmek...
Gönderen: fatih6761 - 12 Ocak 2013, 19:34:13
Form dosyasında birşey yok. Sadece ProcessDialogKey fonksiyonunu projenizde uygun yere yapıştırın. Eğer örnek proje istiyorsanız https://skydrive.live.com/?cid=3770aa04e8007492&id=3770AA04E8007492%216327&authkey=!ACRGMkluvDHKuN4 (https://skydrive.live.com/?cid=3770aa04e8007492&id=3770AA04E8007492%216327&authkey=!ACRGMkluvDHKuN4)
Başlık: Ynt: Yön tuşlarını kontrol etmek...
Gönderen: datasheet - 13 Ocak 2013, 02:40:20
çok teşekkür ederim hocam,seri porta nasıl okutacağız?yani bir aracı kontrol etmek istesem yukarıya bastığımda ileriye gidecek bunu nasıl gerçekleyebilirim?
Başlık: Ynt: Yön tuşlarını kontrol etmek...
Gönderen: fatih6761 - 13 Ocak 2013, 17:18:41
Bunun için önce aracı tasarlamanız gerekiyor. PIC benzeri bir MCU ile yapacaksanız RS232 seri porttan veri göndermek basit.
Başlık: Ynt: Yön tuşlarını kontrol etmek...
Gönderen: semih - 31 Ocak 2013, 15:06:33
Alıntı yapılan: datasheet - 13 Ocak 2013, 02:40:20
çok teşekkür ederim hocam,seri porta nasıl okutacağız?yani bir aracı kontrol etmek istesem yukarıya bastığımda ileriye gidecek bunu nasıl gerçekleyebilirim?

C# kısmında serialport1.writeline(); komutu ile pic kısmında getch(); komutu ile bunları kolaylıkla halledebilirsin.