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);
}
}
}