問題:如何將用戶輸入鏈接到特定的構造函數,並在用戶單擊添加時創建對象。C#將鏈接的窗體與已創建的類和控制檯相連
我如何創建我的項目:
我創建了一個控制檯應用程序。一類叫車具有以下屬性:
- 品牌
- 類型
- 里程
- 投產日期
- 號牌
- 馬力齒輪
- 數
- 座位數
- 卷主幹
- 油耗
2名建設者: 1除了座位數的一切。其次是除了齒輪數量之外
方法根據齒輪數量或座位數量增加了燃油消耗量。
一切正常。我現在創建了一個窗體。將輸出類型更改爲Windows窗體而不是控制檯。
對於Windows窗體:
用戶有2個選項中進行選擇:跑車或家庭用車。取決於用戶選擇的選項,爲跑車提供除座位數量以外的所有屬性。對於家用汽車,除了齒輪數量以外的所有部件。用戶必須填寫汽車的名稱,類型等。
然後用戶需要點擊名爲的按鈕添加以便查看車輛的消耗。在項目後期,我需要創建它,以便用戶可以通過輸入數字牌來刪除它。
namespace Sportwagens {
public class Wagen
{
string Merk;
string Type;
int Aantalkm;
DateTime Ingebruiknamedatum;
string Nummerplaat;
int Pk;
int Brandstofverbruik;
public class Sportwagen : Wagen
{
int Aantalvitessen;
public Sportwagen(string merk, string type, int aantalkm, DateTime ingebruiknamedatum, string nummerplaat, int pk, int aantalvitessen, int brandstofverbruik)
{
Merk = merk;
Type = type;
Aantalkm = aantalkm;
Ingebruiknamedatum = ingebruiknamedatum;
Nummerplaat = nummerplaat;
Pk = pk;
Aantalvitessen = aantalvitessen;
Brandstofverbruik = brandstofverbruik;
}
public int vermeerderingbrandsotfverbruiksportwagen()
{
if (Aantalvitessen >= 6)
{
Brandstofverbruik += 2;
}
return Brandstofverbruik;
}
}
class Gezinswagen : Wagen
{
int Aantalzitplaatsen;
int Koffervolume;
public Gezinswagen(string merk, string type, int aantalkm, DateTime ingebruiknamedatum, string nummerplaat, int pk, int aantalzitplaatsen, int koffervolume, int brandstofverbruik)
{
Merk = merk;
Type = type;
Aantalkm = aantalkm;
Ingebruiknamedatum = ingebruiknamedatum;
Nummerplaat = nummerplaat;
Pk = pk;
Aantalzitplaatsen = aantalzitplaatsen;
Koffervolume = koffervolume;
Brandstofverbruik = brandstofverbruik;
}
public int vermeerderingbrandsotfverbruikgezinswagen()
{
if (Aantalzitplaatsen >= 7)
{
Brandstofverbruik += 1;
}
return Brandstofverbruik;
}
}
public Wagen()
{
}
public Wagen(string merk, string type, int aantalkm, DateTime ingebruiknamedatum, string nummerplaat)
{
Merk = merk;
Type = type;
Aantalkm = aantalkm;
Ingebruiknamedatum = ingebruiknamedatum;
Nummerplaat = nummerplaat;
}
Click here to see how the form looks like
謝謝。這對我幫助很大!還有一個問題,所以我有兩個子類,Sportscar和Familycar。如果用戶選擇例如Sportscar並填寫其他內容,點擊添加,我如何聲明並用用戶輸入初始化對象? – Ilias
假設Sportscar繼承了Car:在按鈕單擊函數外聲明一個Sportscar: Sportscar mySportsCar; 然後函數應該看起來像這樣: private void button1_click(...) { mySportsCar = new Sportscar(brandName etc ..); } 根據需要添加參數。 如果你將代碼複製並粘貼到那裏的問題中,這可能會有所幫助^^^所以我可以看到你在說什麼 –
我不確定我是否正確理解你。所以如果用戶點擊按鈕,用戶插入表單中的信息,我想創建一個對象。我知道如何創建一個對象,但我不知道如何創建一個具有通過窗體給出的信息的對象。 mySportsCar =新的Sportscar(用戶插入的信息,但是如何?)我已經把我的代碼放在問題中,並且鏈接到了圖像上的表單外觀。標識符是荷蘭語,如果它能幫助您解決我的問題,我可以將其更改爲英語。再次感謝Daniel。 – Ilias