trainuil.cs
来自「用C#编写的实现火车查询功能的程序功能比较完整」· CS 代码 · 共 413 行 · 第 1/2 页
CS
413 行
//cboChangeTrains.Text = "";
}
}
private void TrainUIL_Load(object sender, EventArgs e)
{
lstTrainInfo.Columns.Add("车次", 50, HorizontalAlignment.Center);
lstTrainInfo.Columns.Add("列车种类", 90, HorizontalAlignment.Center);
lstTrainInfo.Columns.Add("列车类型", 90, HorizontalAlignment.Center);
lstTrainInfo.Columns.Add("出发城市", 80, HorizontalAlignment.Center);
lstTrainInfo.Columns.Add("到达城市", 80, HorizontalAlignment.Center);
lstTrainInfo.Columns.Add("旅行时间(天)", 100, HorizontalAlignment.Center);
lstTrainInfo.Columns.Add("里程", 60, HorizontalAlignment.Center);
lstTrainInfo.Columns.Add("票价", 60, HorizontalAlignment.Center);
lstTrainInfo.View = View.Details;
lstTrainCodeInfo.Columns.Add("车次", 60, HorizontalAlignment.Left);
lstTrainCodeInfo.Columns.Add("城市", 80, HorizontalAlignment.Left);
lstTrainCodeInfo.Columns.Add("到达时间", 120, HorizontalAlignment.Left);
lstTrainCodeInfo.Columns.Add("离开时间", 120, HorizontalAlignment.Left);
lstTrainCodeInfo.Columns.Add("站", 40, HorizontalAlignment.Left);
lstTrainCodeInfo.Columns.Add("里程(KM)", 70, HorizontalAlignment.Left);
lstTrainCodeInfo.Columns.Add("票价", 70, HorizontalAlignment.Left);
lstTrainCodeInfo.Columns.Add("天数", 60, HorizontalAlignment.Left);
lstTrainCodeInfo.View = View.Details;
}
private void lstTrainInfo_DoubleClick(object sender, EventArgs e)
{
DataSet ds=new DataSet ();
string TrainCode =lstTrainInfo.SelectedItems[0].SubItems[0].Text;
ds=tbusiness.selectTrainInfo(TrainCode);
foreach (DataRow dr in ds.Tables[0].Rows)
{
ListViewItem Item = lstTrainCodeInfo.Items.Add(dr[1].ToString());
Item.SubItems.Add(dr[2].ToString());
Item.SubItems.Add(dr[3].ToString().Remove(0, 10));
Item.SubItems.Add(dr[4].ToString().Remove(0, 10));
Item.SubItems.Add(dr[5].ToString());
Item.SubItems.Add(dr[6].ToString());
//计算票价
KmEnd = int.Parse(dr[6].ToString());
float EndPrice = TicketEnd();
if (KmEnd == 0)
EndPrice = 0;
Item.SubItems.Add(EndPrice.ToString() + "元");
Item.SubItems.Add(dr[7].ToString());
}
//显示列车信息选项卡
tbpOptionCard.SelectedIndex = 2;
//显示打印按钮
btnPrintCode.Visible = true;
}
private void btnNumberSearch_Click(object sender, EventArgs e)
{
if (txtTrainCodeSearch.Text == "")
{
MessageBox.Show("请输入有效信息!");
return;
}
ds=tbusiness.selectTrainCode(txtTrainCodeSearch.Text);
if (ds.Tables[0].Rows.Count == 0)
{
MessageBox.Show("没有找相关列车信息,请重新输入!");
//清空列车编号
txtTrainCodeSearch.Text = "";
}
else
{
//清空列车信息
lstTrainInfo.Items.Clear();
//清空列车编号
txtTrainCodeSearch.Text = "";
//遍例一行所有数
foreach (DataRow dr in ds.Tables[0].Rows)
{
ListViewItem item = this.lstTrainInfo.Items.Add(dr[0].ToString());
item.SubItems.Add(dr[5].ToString());
item.SubItems.Add(dr[6].ToString());
item.SubItems.Add(dr[1].ToString());
item.SubItems.Add(dr[2].ToString());
item.SubItems.Add(dr[8].ToString());
item.SubItems.Add(dr[7].ToString());
//计算票价
sort = dr[5].ToString();
speed = dr[6].ToString();
Km = int.Parse(dr[7].ToString());
float Price = Ticket();
item.SubItems.Add(Price.ToString());
}
//显示列车信息选项卡
tbpOptionCard.SelectedIndex = 1;
}
}
//计算全程票价
private float Ticket()
{
float fareBase = 1;
float trainBase = 1;
if (sort.Equals("空调"))
{
fareBase *= 2;
}
if (speed.Equals("快速"))
{
trainBase *= 1.2f;
}
else if (speed.Equals("特快"))
{
trainBase *= 2;
}
//计算票价
return (Km / 100 + 1) * 10 * trainBase;
}
//计算终点票价
private float TicketEnd()
{
float fareBase = 1;
float trainBase = 1;
if (sort.Equals("空调"))
{
fareBase *= 2;
}
if (speed.Equals("快速"))
{
trainBase *= 1.2f;
}
else if (speed.Equals("特快"))
{
trainBase *= 2;
}
//计算票价
return (KmEnd / 100 + 1) * 10 * trainBase;
}
private void btnPrintCode_Click(object sender, EventArgs e)
{
pd.Print();
}
private void timer1_Tick(object sender, EventArgs e)
{
lblDataTime.Text = DateTime.Now.ToString();
}
//判断选项卡是否改变,去决定打印按钮是否显示
private void tbpOptionCard_SelectedIndexChanged(object sender, EventArgs e)
{
if (tbpOptionCard.SelectedIndex == 0 || tbpOptionCard.SelectedIndex == 1)
{
btnPrintCode.Visible = false;
}
else
{
btnPrintCode.Visible = true;
}
//当单击地图,清空所有文本框、列表
if (tbpOptionCard.SelectedIndex == 0)
{
lstTrainInfo.Items.Clear();
lstTrainCodeInfo.Items.Clear();
cboChangeTrains.Text = "";
txtTrainCodeSearch.Text = "";
txtStartStation.Text = "";
txtEndStation.Text = "";
txtStartStation.Focus();
}
}
private void btnHelp_Click(object sender, EventArgs e)
{
Help.ShowHelp(this, @"Help.chm");
}
private void txtTrainCodeSearch_MouseDown(object sender, MouseEventArgs e)
{
FrmNumber frmnumber = new FrmNumber(this);
frmnumber.ShowDialog();
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?