C#类范围问题?

时间:2015-04-25 17:45:42

标签: c# scope

我是学生。这是我们使用两个不同类文件的第一个项目,它也是使用Forms的第二个项目。所以,我对这两者都没有多少经验。

声明并实例化对象,但在任何后续方法中都无法识别该对象。我正在按照书上的代码。书上的代码声明/实例化如下:

In [60]: %timeit orig(Kx, Ky, u, v, pk)
10 loops, best of 3: 33.6 ms per loop

In [61]: %timeit alt(Kx, Ky, u, v, pk)
1000 loops, best of 3: 349 µs per loop

我认为它需要像这样,但这对后续的参考文献仍然没有帮助:

new Order = new Order( );

这是驱动程序和两个类文件的完整列表:

驱动:

Order newOrder = new Order( );

OrderGUI.cs:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Diner
{
    static class Program
    {
        /// <summary>
        /// The main entry point for the application.
        /// </summary>
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new OrderGUI());
        }
    }
}

Order.cs:     使用系统;     使用System.Windows.Forms;

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Diner
{
    public partial class OrderGUI : Form
    {
        public OrderGUI()
        {
            InitializeComponent();
        }

        //For Load - create object
        private void OrderGUI_Load(object sender, System.EventArgs e)
        {
            newOrder = new Order();

            for (int i = 0; i < newOrder.menuEntree.Length; i++)
            {
                this.lstBxEntree.Items.Add(newOrder.menuEntree[i]);
            }
        }

        // Event handler that gets the entree from the
        // Listbox and sets the entree price of the Order object.
        private void lstBxEntree_SelectedIndexChanged
                           (object sender, System.EventArgs e)
        {
            newOrder.Entree = this.lstBxEntree.Text;
        }

        // Event handler that gets the special request -
        // if one is selected from the predefined list.
        private void cmboSpecial_SelectedIndexChanged
                           (object sender, System.EventArgs e)
        {
            newOrder.SpecialRequest = this.cmboSpecial.Text;
        }

        // Menu item that displays the order. 
        private void menuDisplayOrder_Click(object sender,
                                            System.EventArgs e)
        {

        }

        // Event handler that gets the radio button selected and
        // sets the drink selection for the Order object
        private void Drink_CheckedChanged(object sender,
                                          System.EventArgs e)
        {
            if (this.radTea.Checked)
                newOrder.DrinkSelection = radTea.Text;
            else
                if (this.radCoffee.Checked)
                    newOrder.DrinkSelection = radCoffee.Text;
                else
                    if (this.radSoda.Checked)
                        newOrder.DrinkSelection = radSoda.Text;
                    else
                        if (this.radLemon.Checked)
                            newOrder.DrinkSelection = radLemon.Text;
                        else
                            if (this.radJuice.Checked)
                                newOrder.DrinkSelection = radJuice.Text;
                            else
                                if (this.radMilk.Checked)
                                    newOrder.DrinkSelection = radMilk.Text;
        }

        // Event handler that gets raised when the check box
        // for the Water gets clicked.
        private void ckBxWater_CheckedChanged
                          (object sender, System.EventArgs e)
        {
            if (this.ckBxWater.Checked)
                newOrder.WaterSelection = true;
            else
                newOrder.WaterSelection = false;
        }

        // Event handler that gets raised when the user types
        // values into the text area of the combo box.
        private void cmboSpecial_KeyPress
                           (object sender,
                            System.Windows.Forms.KeyPressEventArgs e)
        {
            newOrder.SpecialRequest = this.cmboSpecial.Text;
        }

        // Event handler that gets raised when the Edit menu 
        // is clicked to change the entree.
        private void menuEditEntree_Click
                           (object sender, System.EventArgs e)
        {

        }

        // Event handler that gets raised when the Edit menu 
        // is clicked to change the drink.
        private void menuEditDrink_Click
                           (object sender, System.EventArgs e)
        {

        }

        // Clears selections for all drink radio buttons. 
        public void ClearDrinks()
        {
            this.radMilk.Checked = false;
            this.radJuice.Checked = false;
            this.radSoda.Checked = false;
            this.radLemon.Checked = false;
            this.radTea.Checked = false;
            this.radCoffee.Checked = false;
        }

        //  Clears all selections so that a new order 
        //  can be placed. Resets the Order object back 
        //  to its default values.
        private void menuClearOrder_Click
                           (object sender, System.EventArgs e)
        {

        }

        // Displays the values for the current instance of
        // Order object members
        private void menuPlaceOrder_Click(object sender,
                                  System.EventArgs e)
        {

        }

        // Event handler that gets raised when the Edit menu 
        // is clicked to change the special requests.
        private void menuEditSpecial_Click(object sender,
                                             System.EventArgs e)
        {

        }

        // Event handler that gets raised when the Help 
        // menu is clicked to show the About message.
        private void menuAbout_Click(object sender,
                                       System.EventArgs e)
        {
            MessageBox.Show("Student Union -" +
                            " Diner by the Valley" +
                            "\n\n\nVersion 1.0");
        }

        // Event handler that gets raised when the 
        // Exit is clicked
        private void menuExit_Click(object sender,
                                      System.EventArgs e)
        {
            Application.Exit();
        }

    }
}

0 个答案:

没有答案