按键精灵-excel

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.Data.OleDb ;

 

 

namespace WindowsFormsApplication1

{

    public partial class Form1 : Form

 

    {

        DataTable dt = new DataTable();

        int currentRow;

        int maxRow;

 

 

 

        [DllImport("user32.dll", EntryPoint = "FindWindow")]

        private extern static IntPtr FindWindow(string lpClassName, string lpWindowName);

 

        [DllImport("user32.dll", EntryPoint = "SetForegroundWindow")]

        public static extern bool SetForegroundWindow(IntPtr hWnd);

 

        [DllImport("user32.dll", EntryPoint = "SendMessageA")]

        private static extern int SendMessage(IntPtr hwnd, string lParam, int wParam,int wMsg);

 

 

 

 

 

        public Form1()

        {

            InitializeComponent();

        }

 

        private void button1_Click(object sender, EventArgs e)

        {

            currentRow = 0;

            showRecord(currentRow);

 

 

 

        }

 

 

 

 

 

        private void showRecord(int i)

        {

            tb0.Text = dt.Rows[i][0].ToString ();

            tb1.Text = dt.Rows[i][1].ToString();

            tb2.Text = dt.Rows[i][2].ToString();

            tb3.Text = dt.Rows[i][3].ToString();

            tb4.Text = dt.Rows[i][4].ToString();

            tb5.Text = dt.Rows[i][5].ToString();

            tb6.Text = dt.Rows[i][6].ToString();

 

 

        }

 

        private void Form1_Load(object sender, EventArgs e)

        {

            openFileDialog1.Filter = "excel03文件(*.xls)|*.xls*|所有文件(*.*)|*.*";

 

            button_visual(false);

 

 

 

 

 

        }

 

        private void button_visual(bool state)

        {

            button1.Visible = state;

            button2.Visible = state;

            button3.Visible = state;

            button4.Visible = state;

            button5.Visible = state;

 

 

 

        }

 

        private void conExcel( string filename)

        {

 

 

            string strCon;

 

                strCon = @"Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" + filename + ";Extended Properties=Excel 8.0";

 

                OleDbConnection oleCon = new OleDbConnection(strCon);

            OleDbDataAdapter oleDA = new OleDbDataAdapter("select * from [Sheet1$]", oleCon);

            oleCon.Open();

            maxRow = Convert.ToInt32(new OleDbCommand("select count(*) from [Sheet1$]", oleCon).ExecuteScalar());

            oleCon.Close();

 

            oleDA.Fill(dt);

 

 

 

 

        }

 

        private void button2_Click(object sender, EventArgs e)

        {

            if (currentRow == 0)

            {

                MessageBox.Show("已经是第一条!");

                return;

            }

            currentRow -= 1;

            showRecord(currentRow);

        }

 

        private void button3_Click(object sender, EventArgs e)

        {

            if (currentRow ==maxRow-1 )

            {

                MessageBox.Show("已经是最后一条!");

                return;

            }

            currentRow += 1;

            showRecord(currentRow);

        }

 

        private void button5_Click(object sender, EventArgs e)

        {

 

            IntPtr hwnd = FindWindow(null, "发票正常开具");

            if (hwnd == IntPtr.Zero)

            {

                MessageBox.Show("开票软件没有运行");

                return;

            }

 

 

            SetForegroundWindow(hwnd);

            SendKeys.Send(tb0.Text);

            SendKeys .Send("{Tab}");

            SendKeys.Send("{Tab}");

            SendKeys.Send("{Tab}");

            SendKeys.Send("{Tab}");

            SendKeys.Send("{Tab}");

            SendKeys.Send("{Tab}");

            SendKeys.Send(tb1.Text);

            SendKeys.Send("{Tab}");

            SendKeys.Send(tb2.Text);

            SendKeys.Send("{Tab}");

            SendKeys.Send(tb3.Text);

            SendKeys.Send("{Tab}");

            SendKeys.Send(tb4.Text);

            SendKeys.Send("{Tab}");

            SendKeys.Send(tb5.Text);

            SendKeys.Send("{Tab}");

 

 

 

 

 

 

        }

 

        private void button4_Click(object sender, EventArgs e)

        {

            currentRow = maxRow - 1;

            showRecord(currentRow );

        }

 

        private void openFileDialog1_FileOk(object sender, CancelEventArgs e)

        {

 

        }

 

        private void sel_file_Click(object sender, EventArgs e)

        {

            openfile();

        }

 

        private void openfile()

        {

 

 

            dt.Clear();

            button_visual(false);

 

            try

                {

                    openFileDialog1.ShowDialog();

                    conExcel(openFileDialog1.FileName);

                    showRecord(0);

 

                }

                catch

                {

                    MessageBox.Show("重新打开正确的数据文件!");

                    return;

 

                }

 

 

 

            button_visual(true);

            }

        }

 

 

    }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值