c# ta parametre olarak sınıf gönderme

Kodla Büyü

krack

Aktif Üye
Mesajlar
236

Arkadaşlar merhaba. Resimde görüldüğü gibi bir program isteniyor. Rastgele dörtgenler eklenecek. Bunların koordinat bilgileri ve ebatları ekrana yazdırılacak. Dörtgenler sağa sola yukarı aşağı kaydırılacak. Başka bir dörtgenle kesişiyorsa hareket edemeyecek. Verilen sınıflar da aşağıdaki gibi.
class Dortgen
{
public Dortgen(){}

public Dortgen(int xSinir,int ySinir){}
public void Ciz() {}
public void DikeyCiz() {}
public void TepeCiz() {}
public void TabanCiz() {}
public void KonumAta(int x, int y){}
public void BoyutAta(int genislik,int yukseklik){}
public void RenkAta(ConsoleColor renk){}
public void SolaOtele() {}
public void SagaOtele() {}
public void YukariOtele() {}
public void AsagiOtele() {}


private int genislik;
private int yukseklik;
private ConsoleColor renk;
private int x;
private int y;
private int xSinir;
private int ySinir;

}
Yukarıdaki Dortgen sınıfı ana sınıf.

class BilgiPaneli
{
public BilgiPaneli(int genislik,int yukseklik)

public void KonumAta(int x,int y)
public void Ciz()
public void BilgiCiz()
public void SekilAta(Dortgen sekil)

private Dortgen aktifSekil;
private Dortgen cizimAlani;

private int genislik;
private int yukseklik;
private int x;
private int y;
}

Bu da bilgi paneli sınıfı. Bundan hariç kontrol paneli ve sahne paneli için iki sınıf daha bulunmakta. Bunları paylaşmadım.
Benim size sorum public void SekilAta(Dortgen sekil) satırında parantezin içinde parametre olarak sınıf atanmış. Bununla alakalı elinizde döküman, örnek var mıdır.
 

Ekli dosyalar

  • nyp2.ödev.png
    nyp2.ödev.png
    8.1 KB · Görüntüleme: 460
Dortgen sınıfından oluşturulmuş bir nesne vereceksiniz parametre olarak:

BilgiPaneli bp = new BilgiPaneli(...);
Dortgen x = new Dortgen();
bp.SekilAta(x);

böylece bp ismindeki bilgi paneline x isimli dortgeni atamis oluyorsunuz
 
Onu sınıf dışından yaptım, public void SekilAta(Dortgen sekil) içine ne yazıcam onu bilemedim
 
sınıf içinde private tanımlı bir aktifSekil değişkeni var büyük ihtimal buna atanması isteniyordur:

Kod:
public void SekilAta(Dortgen sekil) {
      this.aktifSekil = sekil;
}
 
Geri
Üst