Zadaci

Pa da, znam za dizajn, ali sto se tice kodiranja nema neke velike razlike, a i ako ima to je zanemarljivo. E je l' imas download ovog programa vrh je. :) Jesi li ovo spajao program sa SQL Serverom?

Mislio sam kad budem imao vise vremena da sve ove aplikacije sto sam pravio u Formama prebacim u WPF da vidim razliku kodinga. :)

Upravo to ti nece biti pametan potez, jer WPF ne treba da se pise kao sto se pisu WinForme........
Postoji DataBinding koji podrzava ModelViewViewModel obrazac i sve wpf aplikacije bi trebale da se pisu tako(a i pisu se tako, 90% WPF app).

Npr. ovaj moj program nema niti jedan jedini event handler, a ima 16 formi (u WPF to su UserControl, CustomControl i Window), jer je 100% mvvm.

Ovo je softver za lakse upravljanje MySql Bazama podataka, napravis konekciju, konektujes se i onda radis mali milion stvari.
Imas razne UI teme, podrsku za vise jezika, uvoz SQL querija, export istih....
Bukvalno preko ovih malih dugmica mozes uraditi gotovo sve..........
Ima i code snippete koje mozete dodavati i brisati, ima log istoriju,ugradjeno prijavljivanje bug-ova bla bla bla......ima mnogo stvari
Sada cu poceti potpuno novu verziju, vjerovatno nece biti WPF vec QT.......cisto zbog linux-a..........
Ali o tom, po tom............
Ekstra ti je taj program :) A kako da koristim WPF? Samo sam koristio obicne WinForms.
Jednostavno, nabavi neku eknjigu, samo da se ubacis u taj nacin razmisljanja i ostalo.
Kada savladas kontrole i ostalo, uzmi i uci MVVM pattern.......Josh Smith je najbolji u tome (on je i izmislio pattern) tako da ces naci milion njegovih i drugih resursa za ucenje...........
 
Poslednja izmena:
E ovako, posto nikad nista nisam radio u wpf-u, a izgleda mi zanimljivije od obicnih windows formi, odakle bi trebalo da pocnem? :D
Ili najbolje dajte neke linkove
 
Upravo to ti nece biti pametan potez, jer WPF ne treba da se pise kao sto se pisu WinForme........
Postoji DataBinding koji podrzava ModelViewViewModel obrazac i sve wpf aplikacije bi trebale da se pisu tako(a i pisu se tako, 90% WPF app).

Npr. ovaj moj program nema niti jedan jedini event handler, a ima 16 formi (u WPF to su UserControl, CustomControl i Window), jer je 100% mvvm.

Ovo je softver za lakse upravljanje MySql Bazama podataka, napravis konekciju, konektujes se i onda radis mali milion stvari.
Imas razne UI teme, podrsku za vise jezika, uvoz SQL querija, export istih....
Bukvalno preko ovih malih dugmica mozes uraditi gotovo sve..........
Ima i code snippete koje mozete dodavati i brisati, ima log istoriju,ugradjeno prijavljivanje bug-ova bla bla bla......ima mnogo stvari
Sada cu poceti potpuno novu verziju, vjerovatno nece biti WPF vec QT.......cisto zbog linux-a..........
Ali o tom, po tom............

Jednostavno, nabavi neku eknjigu, samo da se ubacis u taj nacin razmisljanja i ostalo.
Kada savladas kontrole i ostalo, uzmi i uci MVVM pattern.......Josh Smith je najbolji u tome (on je i izmislio pattern) tako da ces naci milion njegovih i drugih resursa za ucenje...........

Cekaj jesi mislio da ubacujem System.Windows.Forms
pa onda bukvalno prepisem ono sto sam radio na formama? Ja nisam mislio tako, hteo sam da wpf kodom uradim ono sto sam 'form' kodom radio. :)


Ajd ti nama druze odaj tajnu odakle si sve to naucio. :lol:
Ako su knjige daj naziv knjige. :)
 
Nisam mislio da ubacujes System.Windows.Forms jer se ne moze ubaciti.
Ne postoji wpf kod i wf kod..........sve je to C#, samo druge klase i drugi 'mozak'.........
Polako sa tim pravljenjem aplikacija, wpf zathijeva malo drugaciji nacin razmisljanja.

Krenite lagano, sa shvatanjem pozadine WPF......nakon toga, skontajte kontrole, containere, itemtemplate...........
Da ne spominjem koliko C# trebate da znate :O
Tek posle toga napravite prvu aplikaciju u WPF, malo oko toga, onda Model View ViewModel pattern (trebace vam sigurno pola godine da pocnete raditi sa ovim)
Zatim Unit testing kako bi naucili da testirate MvVm aplikacije i gotovo..........tako sam ja otprilike :)

Knjige nisu, poceo sam Unleashed WPF nzm koji edition, zatim brzo batalio knjige, naucio sam uglavom tehnikom 'probaj sam'.............
Provalim neki code snippet na internetu, onda mjenjam, gledam kako ide, tamo vamo, skontam nesto i tako.........
 
Nisam mislio da ubacujes System.Windows.Forms jer se ne moze ubaciti.
Ne postoji wpf kod i wf kod..........sve je to C#, samo druge klase i drugi 'mozak'.........
Polako sa tim pravljenjem aplikacija, wpf zathijeva malo drugaciji nacin razmisljanja.

Krenite lagano, sa shvatanjem pozadine WPF......nakon toga, skontajte kontrole, containere, itemtemplate...........
Da ne spominjem koliko C# trebate da znate :O
Tek posle toga napravite prvu aplikaciju u WPF, malo oko toga, onda Model View ViewModel pattern (trebace vam sigurno pola godine da pocnete raditi sa ovim)
Zatim Unit testing kako bi naucili da testirate MvVm aplikacije i gotovo..........tako sam ja otprilike :)

Knjige nisu, poceo sam Unleashed WPF nzm koji edition, zatim brzo batalio knjige, naucio sam uglavom tehnikom 'probaj sam'.............
Provalim neki code snippet na internetu, onda mjenjam, gledam kako ide, tamo vamo, skontam nesto i tako.........

Untitled.jpg

moze se ubaciti ;)

Auuu znaci nije tako lako kao sto sam mislio? :sad2:

K'o da novi jezik ucim ***. :lol:
 
Poslednja izmena:
Bate pobedio si xD..........Mozes ti ubaciti i referecnu za OtacSinSvetiDuh.dll, to nema nikakve veze, ne postoji nacin da natjeras WindowsForms kod da radi na WPF-u........
Dll je Dynamic Link Library, to je samo skup klasa (koda uopste) organizovanog po nekim modulima ili komponentama;

Tako u System.Drawing imas klase koje se bave crtanjem.......U System.Xml klase za upravljanje xml formatom..........................
Samo im ime kaze da se dinamicki 'vuku' u program, nasuprot staticnim bibliotekama (*.a msm)

I sta ces sa System.Windows.Forms u WPF ? o.O


Polako, nemoj misliti da sve znas ;)
 
Bate pobedio si xD..........Mozes ti ubaciti i referecnu za OtacSinSvetiDuh.dll, to nema nikakve veze, ne postoji nacin da natjeras WindowsForms kod da radi na WPF-u........
Dll je Dynamic Link Library, to je samo skup klasa (koda uopste) organizovanog po nekim modulima ili komponentama;

Tako u System.Drawing imas klase koje se bave crtanjem.......U System.Xml klase za upravljanje xml formatom..........................
Samo im ime kaze da se dinamicki 'vuku' u program, nasuprot staticnim bibliotekama (*.a msm)

I sta ces sa System.Windows.Forms u WPF ? o.O


Polako, nemoj misliti da sve znas ;)
Pa samo ti kazem da je moguce ukljuciti Forms klasu u wpf-u.
Normalno da ne znam, covek se uci dok je ziv.
 
Evoo :D
Kod:
#include <cstdio>

int main()
{
    int n;
    scanf("%d", &n);    
    
    if (n < 3)
       printf("1");
    else 
    {
         int a=1, b=1, c;
         
         for (int i=3; i <= n; i++) {
             c=a+b;
             a=b;
             b=c;    
         }
         
         printf("%d", c);         
    }
}
 
To je to, otprilike :D
Kod:
#include <cstdio>

long long stepenovanje(int a, int n) {
     if (n == 1)
        return a;
     else if (n == 2)
          return a*a;
     else if (n%2 == 0)
        return stepenovanje(a, n/2)*stepenovanje(a, n/2);
     else
          return stepenovanje(a, n/2)*stepenovanje(a, n/2)*a;
}

int main() {
    int n, a;
    scanf("%d%d", &a, &n);    
    
    if (n == 0)
       printf("1");
    else 
    {
         unsigned long long stepen=stepenovanje(a, n);
         printf("%llu", stepen);
    }
}
 
To je to, otprilike :D
Kod:
#include <cstdio>

long long stepenovanje(int a, int n) {
     if (n == 1)
        return a;
     else if (n == 2)
          return a*a;
     else if (n%2 == 0)
        return stepenovanje(a, n/2)*stepenovanje(a, n/2);
     else
          return stepenovanje(a, n/2)*stepenovanje(a, n/2)*a;
}

int main() {
    int n, a;
    scanf("%d%d", &a, &n);    
    
    if (n == 0)
       printf("1");
    else 
    {
         unsigned long long stepen=stepenovanje(a, n);
         printf("%llu", stepen);
    }
}

Mislim da moze i u konzoli ali sam zaboravio da napomenem da treba kao program. :)
 
Evo jos jedan od mene, ja sam ga smislio:

Kod:
Napraviti program koji ce pri loadu forme iscrtati jedan krug, kada se pritisne taster :
'UP' krug se pomera ka gore, 
'DOWN' ka dole, 
'LEFT'-levo i
 'RIGHT' - desno. 
Kada se pritisne taster 
'RIGHT SHIFT' krug se povecava,
 kada se pritisne taster 
'LEFT SHIFT' krug se smanjuje.

:per:
 
Poslednja izmena:
Kod:
...
namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        int x, y, r = 60;
        string key;
        Timer timer = new Timer();
        public Form1()
        {
            InitializeComponent();

            timer.Interval = 50;
            timer.Enabled = false;
            timer.Tick += new EventHandler(timer_Tick);
            x = ClientRectangle.Width / 2; 
            y = ClientRectangle.Height / 2;
        }

        private void Form1_Paint(object sender, PaintEventArgs e)
        {
            Graphics g = CreateGraphics();
            SolidBrush cetkica = new SolidBrush(Color.Red);

            g.FillEllipse(cetkica, x - r, y - r, 2 * r, 2 * r);
        }

        private void Form1_Resize(object sender, EventArgs e)
        {
            x = ClientRectangle.Width / 2;
            y = ClientRectangle.Height / 2;
            this.Refresh();
        }

        private void Form1_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Up)
            {
                key = "up";
                timer.Start();
            }

            else if (e.KeyCode == Keys.Down)
            {
                key = "down";
                timer.Start();
            }

            else if (e.KeyCode == Keys.Left)
            {
                key = "left";
                timer.Start();
            }

            else if (e.KeyCode == Keys.Right)
            {
                key = "right";
                timer.Start();
            }

            else if (e.KeyCode == Keys.PageDown)
            {
                key = "lshift";
                timer.Start();
            }

            else if (e.KeyCode == Keys.PageUp)
            {
                key = "rshift";
                timer.Start();
            }
        }

        private void Form1_KeyUp(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Up || e.KeyCode == Keys.Down || e.KeyCode == Keys.Left || e.KeyCode == Keys.Right || e.KeyCode == Keys.PageUp || e.KeyCode == Keys.PageDown)
                timer.Stop();
        }

        private void timer_Tick(object sender, EventArgs e)
        {
            if (key == "up" && y-r >= 0)
            {
                y -= 2;
                this.Refresh();
            }

            else if (key == "down" && y + r <= ClientRectangle.Height)
            {
                y += 2;
                this.Refresh();
            }

            else if (key == "left" && x - r >= 0)
            {
                x -= 2;
                this.Refresh();
            }

            else if (key == "right" && x + r <= ClientRectangle.Width)
            {
                x += 2;
                this.Refresh();
            }

            else if (key == "lshift" && r > 0)
            {
                r--;
                this.Refresh();
            }

            else if (key == "rshift" && y - r >= 0 && y + r <= ClientRectangle.Height && x - r >= 0 && x + r <= ClientRectangle.Width)
            {
                r++;
                this.Refresh();
            }
        }        
    }
}
Evo ovog sa krugom :D
Samo kako da detektujem da li je pritisnut levi ili desni shift? :confused:
Ja sam radio sa pageup i pagedown
I neka da jos neko, ako ima efikasnije resenje :D
 
Poslednja izmena:
Kod:
...
namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        int x, y, r = 60;
        string key;
        Timer timer = new Timer();
        public Form1()
        {
            InitializeComponent();

            timer.Interval = 50;
            timer.Enabled = false;
            timer.Tick += new EventHandler(timer_Tick);
            x = ClientRectangle.Width / 2; 
            y = ClientRectangle.Height / 2;
        }

        private void Form1_Paint(object sender, PaintEventArgs e)
        {
            Graphics g = CreateGraphics();
            SolidBrush cetkica = new SolidBrush(Color.Red);

            g.FillEllipse(cetkica, x - r, y - r, 2 * r, 2 * r);
        }

        private void Form1_Resize(object sender, EventArgs e)
        {
            x = ClientRectangle.Width / 2;
            y = ClientRectangle.Height / 2;
            this.Refresh();
        }

        private void Form1_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Up)
            {
                key = "up";
                timer.Start();
            }

            else if (e.KeyCode == Keys.Down)
            {
                key = "down";
                timer.Start();
            }

            else if (e.KeyCode == Keys.Left)
            {
                key = "left";
                timer.Start();
            }

            else if (e.KeyCode == Keys.Right)
            {
                key = "right";
                timer.Start();
            }

            else if (e.KeyCode == Keys.PageDown)
            {
                key = "lshift";
                timer.Start();
            }

            else if (e.KeyCode == Keys.PageUp)
            {
                key = "rshift";
                timer.Start();
            }
        }

        private void Form1_KeyUp(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Up || e.KeyCode == Keys.Down || e.KeyCode == Keys.Left || e.KeyCode == Keys.Right || e.KeyCode == Keys.PageUp || e.KeyCode == Keys.PageDown)
                timer.Stop();
        }

        private void timer_Tick(object sender, EventArgs e)
        {
            if (key == "up" && y-r >= 0)
            {
                y -= 2;
                this.Refresh();
            }

            else if (key == "down" && y + r <= ClientRectangle.Height)
            {
                y += 2;
                this.Refresh();
            }

            else if (key == "left" && x - r >= 0)
            {
                x -= 2;
                this.Refresh();
            }

            else if (key == "right" && x + r <= ClientRectangle.Width)
            {
                x += 2;
                this.Refresh();
            }

            else if (key == "lshift" && r > 0)
            {
                r--;
                this.Refresh();
            }

            else if (key == "rshift" && y - r >= 0 && y + r <= ClientRectangle.Height && x - r >= 0 && x + r <= ClientRectangle.Width)
            {
                r++;
                this.Refresh();
            }
        }        
    }
}
Evo ovog sa krugom :D
Samo kako da detektujem da li je pritisnut levi ili desni shift? :confused:
Ja sam radio sa pageup i pagedown
I neka da jos neko, ako ima efikasnije resenje :D

Ma 'de znam :lol:, naveo sam samo primer mozes koje hoces dugme to je svejedno :)

Manje, vise razumem ceo kod samo ovo mi nije jasno sta predstavlja > 'ClientRectangle', jel to pozicija objekta na formi?
 
Ma 'de znam :lol:, naveo sam samo primer mozes koje hoces dugme to je svejedno :)

Manje, vise razumem ceo kod samo ovo mi nije jasno sta predstavlja > 'ClientRectangle', jel to pozicija objekta na formi?

Pa to u ovom slucaju predstavlja formu, ali bez menija, scrollbarova, itd. :D Ja sam koristio da bih uzeo visinu i sirinu
E sad ne znam da li to moze da se koristi i za druge kontrole?
 
Pa probao sam ja to sa this, ali nije mi krug bio na sredini :O mozda sam ja nesto drugo bio pogresio, nemam pojma, ali kad sam stavio ovo onda mi je lepo stavio krug na sredinu :D
Ili sam ja corav malo pa lepo ne vidim :)
 

Back
Top