[ zbokanov @ 05.06.2007. 15:34 ] @
Za zadaću sam dobio neki zadatak i nije mi jasan ovaj dio (kako ga riješiti):
"Kod koji se treba izvršiti klikom na drugu tipku treba biti poziv funkcije koja kao argument prima pokazivač na prethodnu funkciju. Koristiti delegata."
Deklarirao sam delegat:
Code:
public delegate void NoviDelegat(object prvi, EventArgs drugi);


I imam kod za izvođenje:

Code:
private void button2_Click(object sender, EventArgs e)
        {

        }


Treba mi ukratko objašnjenje, ne mogu snaći po msdn-u!

[Ovu poruku je menjao zbokanov dana 08.06.2007. u 11:57 GMT+1]
[ Pharos @ 06.06.2007. 09:03 ] @
A šta kažeš da nam postuješ kompletan zadatak?
Teško je odgovoriti ne znajući šta se tačno traži.
Code:

private void button2_Click(object sender, EventArgs e)
{
    drugaFja(NekiDel d);
}


drugaFja ti je druga f-ja koja se poziva, a NekiDel ti je delegat tj. pokazivač na neku tamo f-ju.
[ zbokanov @ 07.06.2007. 11:46 ] @
Hvala na odgovoru, nisam baš radio s c# pa mi ima dosta stvari nejasnih. Ovo sam uspio rješiti ali imam trenutno par drugih stvarčica za koje trebam pomoć. Dakle:

Dodati svojstvo na prvu formu tipa string, te postaviti pristupnike na svojstvo.
Na klik button3 upisati sadržaj "NOVO SVOJSTVO" u svojstvo.
Na klik button4 ispisati sadržaj svojstva u Message prozoru.
Na klik button5 promijeniti svojstvo forme za pozicioniranje forme tako da se na klik forma pomakne.

Ovo je kod forme koji sam dosad napisao:

Code:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace WindowsApplication1
{
    public partial class Form1 : Form
    {
        private string ime;
        public string Ime
        {
            get { return ime; }
            set { ime = value; }
        }
        public delegate void NoviDelegat(object prvi, EventArgs drugi);

        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            Form2 test = new Form2();
            test.Otvori += new Form2.OtvoriDrugiProzor(Funkcija);
            test.Show();
        }

        public void Funkcija(object jedan, EventArgs dva)
        {
            MessageBox.Show("Funkcija na event");
        }

        private void button2_Click(object prvi, EventArgs drugi)
        {
            Form1 p = new Form1();
            NoviDelegat d = new NoviDelegat(p.Funkcija);
            d(prvi, drugi);
        }

        private void button3_Click(object sender, EventArgs e)
        {
            Form1 t = new Form1();
            t.Ime = "NOVO SVOJSTVO";
            Console.WriteLine("{0}", t);
        }

        private void button4_Click(object sender, EventArgs e)
        {
            MessageBox.Show(Ime);
        }

        private void button5_Click(object sender, EventArgs e)
        {
        }
    }
}