我正在为一个项目编写一个基本程序,在那里你订购一支蜡烛。在表单(frm_Order)上,我有输入名称,地址,zip等的标签。然后你点击继续,它会带你到下一个表格。在该表单上,它是客户信息和第一个表单(frm_items)上购物车内容(lst_cart)的订单摘要。
我有两个框总结了我希望输出为购物车中的商品的顺序以及包含客户信息的订单表单中的输入。如何编写模块以显示以前表单中的输入?此外,当它打开每个进行中的表格时,如何关闭前一个表格,以便打开3个窗口?
答案 0 :(得分:0)
我认为你可以在表格中实现这一点,无论是在其中一个还是两个。而不是模块,我认为你可以有这样做的功能。我不清楚你拥有的工具以及如何在要显示的表格上显示这些工具的顺序。你似乎有3个表格而你还没有清除他们所做的事情,所以会用两种形式告诉你。
第一个表单是您选择的地方,然后第二个表单是您将在第一个表单上看到您选择的客户名称和姓氏的位置:
在form1上你需要(将尽可能简单)2 TextBox,一个名称为txtname,然后是第二个名称txtsurname。
添加一个ComboBox并将其命名为cmbitem 添加一个按钮并将其命名为btnorder
现在让我们去form2,我相信你已经添加了它。 在顶部添加标签并将其命名为lblorder_from 添加一个列表框并将其命名为lstitem 添加一个按钮并关闭它
现在让我们开始编码。
返回form1并双击订单按钮并输入此代码。
' First check if textboxs are not null.
If txtname.Text = "" Or txtsurname.Text = "" Then
' The textboxs or one of them has nothing typed so display error
MsgBox("The fields can not be empty, please type something")
Else
' We are good, textboxs are not null
' Declare our variables that we will use.
Dim Name, Surname, Item As String ' You can also just not use this, instead just call the controls it self
' Assigning values to our variables
Name = txtname.Text
Surname = txtsurname.Text
Item = cmbitem.SelectedItem.ToString
' Transfering data from this form to the second form.
Form2.lblitem_from.Text = Name & " " & Surname & "'s order"
lstitem.Items.Add(Item)
' Hide this form before showing the second form.
Me.Visible = False
' Show the second form
Form2.show
现在转到Form2并双击按钮关闭按钮并输入此代码。
Application.Exit()
' This will close all forms but if you used the "Close" it would close only form2 so you would need to make some changes on a project properties to enable that the project should close if form2 is closing because right not by defualt it is set to close only when form1 is closing.
希望这能为您提供如何在表单之间传输项目/数据的图片,您现在可以运行它并且您必须在ComboBox上添加至少一个项目双击form1表单以转到form_load( )并输入此
' Add items to combobox
cmbitem.Items.Add("Rice")
cmbitem.Items.Add("Pie")
然后现在您可以运行它,并填写控件并单击订单按钮以查看。
输出应该是,在第二个表格上你应该看到一个名字和姓氏,在列表框中你应该看到你选择的项目。根据您的要求,一次只能显示一个表单。