Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

U vezi postavljanja poligona u 2010

elitemadzone.org :: MadZone :: U vezi postavljanja poligona u 2010

[ Pregleda: 3612 | Odgovora: 18 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

strš
ČAČAK

Član broj: 59295
Poruke: 324



+2 Profil

icon U vezi postavljanja poligona u 201004.11.2013. u 17:06 - pre 126 meseci
U visual basic-u 2010 ne mogu da nađem opciju gde bih postavio poligon koji, kad se prevuče miš preko njega, upiše nešto u label. Postoji krug i pravougaonik ali nema nigde opcija (ili ja ne mogu da nađem) da poligon crtam t.j. da bude nepravilnog oblika. Totalni sam početnik i trenutno me ne zanima programiranje već samo opcija slobodnog crtanja. Ima li toga u visual basicu ili sam "odvalio" pitanje?
 
Odgovor na temu

shpiki
Student
Novi Sad

Član broj: 50342
Poruke: 1651



+62 Profil

icon Re: U vezi postavljanja poligona u 201010.11.2013. u 20:34 - pre 126 meseci
Ajd' probaj malo bolje da objasnis, vidis da tema ima dosta pregleda a ni jednog odgovora...
Molim te budi malo precizniji... ili daj sliku nekog primera... ovako ne vredi.
There are only 10 types of people in the world:
those who understand binary, and those who don't.
 
Odgovor na temu

strš
ČAČAK

Član broj: 59295
Poruke: 324



+2 Profil

icon Re: U vezi postavljanja poligona u 201011.11.2013. u 11:33 - pre 126 meseci
Pokušaću ali znaj da sam totalni početnik i ne "baratam" sa stučnim nazivima tako da ću pisati prostim rečima.
Posedujem Visual Studio 2010 profesional i pokušavam da pišem u C#-u ali to za sada nije bitno. Usput kako se ispravno izgovara, C#?
U Toolbox-u ima Visual Basic PowerPacks i u njemu mogućnost crtanja oblika: LineShape- crtanje linije, OvalShape- crtanje ovalnih oblika i RectangleShape- crtanje pravougaonih oblika.
Moja želja je da nacrtam nepravilan oblik t.j. da uokvirim neku sliku koja je nepravilnog oblika, i da tom obliku dodelim neki "posao" sa Events opcijom koja se nalazi sa desne strane u Propertis.
Nadam se da sam bio jasan sa pitanjem a ako nisam recite mi šta da vam objasnim podrobnije.

Da ne bih otvarao novu temu ako može, pored ovog pitanja da mi objasnite još jedan detalj a to je kako se program izvršava t.j. ima li neki redosled. Pokušaću da objasnim:
Imam, recimo, dva dugmeta (button) i "rekao" sam im da kad se strelica postavi na neki od dugmeta da mi u Label upiše dugme 1 ili dugme 2 u zavisnosti na kom dugmetu se nalazi strelica. Ovo mi nije problem da uradim ali me interesuje kako program radi t.j. kad nisam ni na jednom dugmetu gde je petlja programa? Ili možda je bolje da kažem ako je strelica na dugmetu 1 onda je programska petlja u podprogramu za dugme ( između početne zagrade { i završne }). Da li program "ide", od provere dali je strelica na mišu pa na izvršenje zadatka koji je zadat u okviru zagrada {}, pa kad dođe do kraja završne zagrade} onda se vraća na proveru dali je strelica i dalje na dugmetu jedan i opet izvršava zadatak koji mu je zadat?

Ovo pitam jer mi treba da shvatim kako se program izvršava da bih imao predstavu na koji način da počnem da pišem (učim) C# ili bilo koji drugi program.
Možda nisam baš najjasnije objasnio ali nije mi teško da ponovo objašnjavam jer ipak ovo meni treba a ne vama jer vi to već znate.
Pozdrav i hvala što imate vremena da "prosvetlite" još jednu izgubljenu dušu u ovom tamnom tunelu, zvanom programiranje.
 
Odgovor na temu

shpiki
Student
Novi Sad

Član broj: 50342
Poruke: 1651



+62 Profil

icon Re: U vezi postavljanja poligona u 201011.11.2013. u 19:50 - pre 126 meseci
Ne postoji takva kontrola (bar ne u standardnom paketu, moguće da je neko pisao svoju kontrolu kojom može da pravi/crta nepravilne oblike).

C# se izgovara kao "si šarp" ili po naški "ce taraba"

Što se drugog dela pitanja tiče, nije baš tako jednostavno kako si zamislio
Jel znaš šta znači "objektno orijentisano programiranje"?
There are only 10 types of people in the world:
those who understand binary, and those who don't.
 
Odgovor na temu

strš
ČAČAK

Član broj: 59295
Poruke: 324



+2 Profil

icon Re: U vezi postavljanja poligona u 201011.11.2013. u 22:06 - pre 126 meseci
Zahvaljujem na odgovorima i nije mi jasno zbog čega nije data opcija slobodnog crtanja? Ali ako kažeš da ga nema u opcijama onda moram da se sa tim pomirim i pokušam na drugi način da dođem do rešenja.
Što se tiče drugog dela pogledao sam tvoj profil i vidim da ti nije strano programiranje mikrokontrolera a pošto i ja pomalo baratam sa programiranjem istih ali su u pitanju PIC mcu zamislio sam da "put" programa putuje od početka programa prema kraju kao kod mikrokontrolera t.j. počinje od adrese 0000 pa onda 0001 i itd.
Takođe "put" programa u mplab-u mogu da posmatram korak po korak. Da i je to moguće u Visual Studiju? Pokušao sam da razumem "objektno orijentisano programiranje" ali koliko vidim moram da odvojim neko vreme da bih shvatio šta je pisac hteo da kaže.
Dajem primer za program pisan u C-u za PIC16f877a :
Code:

/////////////////////////////////////////////////////////////////////////
////                          EX_ADMM.C                              ////
////                                                                 ////
////  This program displays the min and max of 30 A/D samples over   ////
////  the RS-232 interface.  The process is repeated forever.        ////
////                                                                 ////
////  Configure the CCS prototype card as follows:                   ////
////      Insert jumpers from: 11 to 17, 12 to 18 and 9 to 16        ////
////      Use the #9 POT to vary the voltage.                        ////
/////////////////////////////////////////////////////////////////////////
#include<16f877a.h>
#fuses HS,NOLVP,NOWDT,PUT
#use delay(clock=20000000)
#use rs232(baud=9600,xmit=PIN_C6,rcv=PIN_C7)

void main() {
   int i, value, min, max;
   
   printf("Sampling:");
   
   setup_adc_ports( RA0_ANALOG );
   setup_adc( ADC_CLOCK_INTERNAL );
   set_adc_channel( 0 );
   
   do {                       //Takes 30 samples from pin A0
      min = 255;              //and displays the min and max
      max = 0;                //values for that 100ms period
      for(i = 0; i <= 30; ++i) {
         delay_ms(100);
         value = read_adc();
         if(value < min)
            min = value;
         if(value > max)
            max = value;
      }
      printf("nrMin:%x MAX: %x", min, max);
   } while (TRUE);
}

Program nije bitan ali izvršenje programa kreće od void main()-a, posle toga dolazi do deklarisanje promenljivih int i, value, min, max;, posle toga dolazi do ispisa printf("Sampling:"); itd. Ovo je put izvršenja programa kod mikrokontrolera.
Sledeći primer je za program pisan u C# u Visual Studiju:
Code:

int caseSwitch = 1;
switch (caseSwitch)
{
    case 1:
        Console.WriteLine("Case 1");
        break;
    case 2:
        Console.WriteLine("Case 2");
        break;
    default:
        Console.WriteLine("Default case");
        break;
}

Da li u ovom primeru početak izvršavanja naredbe kreće od deklarisanja "int caseSwitch = 1;" pa onada praćenja prekidača switch (caseSwitch) i posmatranje istog i u slučaju da je 1 ispisuje Case 1 "Console.WriteLine("Case 1");" i sa break izlazi iz petlje? I kad izađe da li se vraća na početak "switch (caseSwitch)" i ponovo posmatra prekidač ili staje sa izvršavanjem programa jer nema naredbu beskonačne petlje ( while(1) u C-u kod mikrokontrolera)?
Ovo mi je bitno da shvatim i zato sam možda malo opširniji.
Pozdrav.
 
Odgovor na temu

shpiki
Student
Novi Sad

Član broj: 50342
Poruke: 1651



+62 Profil

icon Re: U vezi postavljanja poligona u 201013.11.2013. u 11:44 - pre 126 meseci
Malo je drugacija logika kod mikrokontrolera.
Inace, svejedno je da li koristis PIC, AVR, ARM, Freescale, Motorolu, Texas... ideja je ista, koren je isti, logika je ista

Sto se ovog tvoj primera tice, tvoja switch naredba ce se izvrsiti samo onda kada je pozoves ili u toku jednog prolaza kroz program.
Znaci, kad program jednom udje u switch, pogledace uslove, odraditi ono sto mi je potrebno/zadato i onda ce "stati" (kazem "stati" jer ne znam kako se dalje program odvija, sta se dalje trazi...).
Ti mozes da napravis od ovog dela koda funkciju koja ce se zvati (recimo) ProveriSwitch (int pSwitch), koju mozes da pozivas kad god ti je potrebno u programu i da joj prosledis parametar pSwitch.

Valjda sam bio jasan.

Ako ti nije problem, napisi kakav program pravis pa cemo mozda moci malo vise da ti pomognemo. Ovako, mozemo 15 dana pisati uopsteno i da nista korisno ne uradimo

I sto se OOP tice, da, moras malo vise "sesti i zagrejati stolicu" ako hoces da se bavis programiranjem... prica sa 8bitnim i 16bitnim uC (mikrokontrolerima) je jedno, dok je prica sa 32bitnim uC isto OOP - znaci, ako hoces i time da se bavis vracas se na pocetak petlje --> OOP. To ti je prijateljski savet, ti uradi kako mislis da je najbolje.

Pozdrav!
There are only 10 types of people in the world:
those who understand binary, and those who don't.
 
Odgovor na temu

strš
ČAČAK

Član broj: 59295
Poruke: 324



+2 Profil

icon Re: U vezi postavljanja poligona u 201013.11.2013. u 16:11 - pre 126 meseci
Konkretno:
Ideja mi je da ekran podelim na 4 dela i to:
I četvrina da mi bude šema nekog uređaja
II četvtina da mi bude slika delova na pločici istog uređaja
III četvrtina da mi bude opis dela (otpornik,kondezator, IC kolo...)
IV četvrina da mi bude defektaciona lista.
Kada postavim sterlicu na neki deo u šemi (I četvrtina) da mi se uokviri crvenom bojom isti taj deo gde se nalazi na pločici u II četvrtini. U III četvrtini da mi se pokaže karakteristika tog dela (recimo za otpornik: kolika mu je vrednost, koja snaga, oznaka, njegov identifikacioni broj...). A ako kliknem na taj deo u I četvrtini, da mi u IV četvrtini upiše u prazno polje, od defektacione liste, kao deo koji trebujem i koji mogu da sačuvam ili oštampam.
Kasnije bi proširio priču da i na II četvrini imam mogućnost kao da sam na prvoj. Ali nije mi to za sada bitno.
Možda sam zahtevan ali šta me košta da pokušam.

Vraćam se na kod koji sam postavio.
Zamisli da nema dalje. Da je ovo ceo kod. Da li će "stati" posle zadnje naredbe ili će stalno biti na "oprezu" i čekati da se nešto dogodi (vezano za switch)?

"Malo je drugacija logika kod mikrokontrolera."- nisam baš razumeo, smatraš da nisam u pravu kad kažem da mikrokontroler odrađuje adresu pa onda prvu sledeću itd. (ograđujem se ako u kodu ima petlji koje ga vode na druge adrese na primer goto)?

"Ti mozes da napravis od ovog dela koda funkciju koja ce se zvati (recimo) ProveriSwitch (int pSwitch), koju mozes da pozivas kad god ti je potrebno u programu i da joj prosledis parametar pSwitch."- hoćeš da kažeš da napravim podprogram koji ću moći da pozivam kad mi zatreba (kao kod mikrokontrolera)?

Posavetuj me koju literaturu da koristim ili kako da naučim "objektno orijentisano programiranje"?

Još jednom se zahvaljujem.
 
Odgovor na temu

shpiki
Student
Novi Sad

Član broj: 50342
Poruke: 1651



+62 Profil

icon Re: U vezi postavljanja poligona u 201013.11.2013. u 20:12 - pre 126 meseci
Citat:
strš: Vraćam se na kod koji sam postavio.
Zamisli da nema dalje. Da je ovo ceo kod. Da li će "stati" posle zadnje naredbe ili će stalno biti na "oprezu" i čekati da se nešto dogodi (vezano za switch)?

Da, nema ovde petlje kao kod mikrokontrolera (while (1) ili for ( ; ; ), zavisi sta koristis)...
Ako je ovo ceo kod, program ce postaviti vrednost caseSwitch na 1 (caseSwitch = 1), uci ce u switch naredbu, uporediti uslove (case), naci vrednost za taj case i odraditi ono sto je definisano za taj uslov. KRAJ.

I u C# imas petlje kao sto su do{}while, do{}until... kojima mozes da vrtis svoj program gde i kad ti treba.
Citat:
strš: "Malo je drugacija logika kod mikrokontrolera."- nisam baš razumeo, smatraš da nisam u pravu kad kažem da mikrokontroler odrađuje adresu pa onda prvu sledeću itd. (ograđujem se ako u kodu ima petlji koje ga vode na druge adrese na primer goto)?

Ne, nego kod programiranja za desktop, program obicno nije tako jednostavan da se samo izvrsava linijski (redom, komanda-po-komanda, red-po-red), vec obicno imas skokove u programu gde se nakon izvrsene jedne komande poziva druga koja je ko-zna-gde u programu, pa te ona "baca" na neko drugo mesto... razumes sta hocu da kazem?
Kod kontrolera ispadanje iz programa imas samo za interrupte gde ti navedes za koji interrupt se izvrsava koji potprogram i program se vraca tamo gde je stao...
Citat:
strš: "Ti mozes da napravis od ovog dela koda funkciju koja ce se zvati (recimo) ProveriSwitch (int pSwitch), koju mozes da pozivas kad god ti je potrebno u programu i da joj prosledis parametar pSwitch."- hoćeš da kažeš da napravim podprogram koji ću moći da pozivam kad mi zatreba (kao kod mikrokontrolera)?

Da, upravo tako... znas i sam da u programiranju imas funkcije i potprograme...
Citat:
strš: Posavetuj me koju literaturu da koristim ili kako da naučim "objektno orijentisano programiranje"?

Ovde imas spisak knjiga, al' posteno da ti kazem, ja sam sa OOP krenuo na faksu, knjigu ne volim ocima da vidim ako nije nesto vezano za elektroniku ili ako nije vezano za istoriju, znaci da bubam OOP iz knjige - ne ide!
Vise volim da odgledam par video tutorijala, generalno tako sam naucio 80% svega vezano za programiranje i elektroniku.
Jedna jako bitna stvar - kako stojis sa engleskim jezikom?
Ako ne razumes sta ti se prica i ne mozes da procitas sta pise - moj ti je savet da batalis sve i da upises neki kurs engleskog.
Nista od ovog sto radis ne vredi ako ne razumes sta ti pise i sta ti se govori. Veruj mi, vise ces vremena potrositi da savladas bilo koje gradivo ako ne znas engleski. Istina, ima par knjiga i na srpskom i dosta prevedenih knjiga sa engleskog, ali sve je to dzaba.
Znaci - ako si sa engleskim na Ti onda imas YT, imas predavanja sa raznih svetskih univerziteta pa gledaj, slusaj, uci...
Ako si pak sa engleskim na Vi - batali sve, odradi jedan kurs engleskog od mesec-dva dana i tek onda pocni sa ucenjem...
Citat:
strš:Još jednom se zahvaljujem.

Nema na cemu, tu smo da se pomazemo. Ako sam ti pomogao bar 1% - ja sam prezadovoljan!

Sve najbolje!
Pozdrav.
There are only 10 types of people in the world:
those who understand binary, and those who don't.
 
Odgovor na temu

strš
ČAČAK

Član broj: 59295
Poruke: 324



+2 Profil

icon Re: U vezi postavljanja poligona u 201013.11.2013. u 22:23 - pre 126 meseci
Hvala ti na jasnim i preciznim odgovorima. Sve sam razumeo i primio k' znanju.
Ovo malo što znam da programiram mikrokontrolere je sve iz knjiga koje sam "skidao" sa neta i štampao. Za razliku od tebe više volim da učim iz knjige jer mi daje slobodu da je koristim kad mi treba ili kad sam raspoložen za nju (mislim knjigu) a mogu i da je čitam u krevetu, još ako je na engleskom onda je prvo prevedem (mislim na stručne izraze), upišem sa strane pa tek onda je proučavam. Metod je sporiji ali šta ćeš kad sam učio ruski.

Eщe raz spasibo!
 
Odgovor na temu

shpiki
Student
Novi Sad

Član broj: 50342
Poruke: 1651



+62 Profil

icon Re: U vezi postavljanja poligona u 201013.11.2013. u 23:43 - pre 126 meseci
Onda smo nesto korisno uradili nas dvojica!
Ok, jasno mi je da si (nazalost) ucio pogresan jezik (sto se ove struke tice naravno, nikako nije lose znati bilo koji strani jezik da se razumemo).
Ostajem pri svom stavu da je mnogo pametnije neko vreme utrositi na ucenje engleskog a zatim na ucenje programiranja.
Evo nesto na srpskom, nadam se da ce ti pomoci. Naravno, C++ je isto sto i C#, samo sto dodatno C# ima mogucnost izrade GUI (korisnicki interfejs), dok je C++ suva konzola.

Vse samoe lučšee!

nece da mi prebaci na ćirilicu ovo sto sam napisao...
There are only 10 types of people in the world:
those who understand binary, and those who don't.
 
Odgovor na temu

strš
ČAČAK

Član broj: 59295
Poruke: 324



+2 Profil

icon Re: U vezi postavljanja poligona u 201015.11.2013. u 18:23 - pre 126 meseci
Može mala pomoć? Može!? Hvala.

"Skinuo" sam par tekstova i polako ulazim u štos. Usput pokušavam da u Visual Basicu napravim okvir kako će sve to da izgleda. Imam kod ( ja napisao: copy-paste ).
Ovo je deo koji me smara:
Code:

.
.
.
private void rectangleShape1_MouseEnter(object sender, EventArgs e)
        {
                {
                    
                    for (int i = 0; i < 50000000; i++)  // naredba se izvršava unutar zagrada za određeno vreme
                    {
                        rectangleShape4.BorderColor = Color.Red;  // okvir pocrveni
                    }
                    
                    rectangleShape4.BorderColor = Color.Transparent; // okvir nestane
                    //rectangleShape4.BorderColor = Color.Red;
                }
            
        }
.
.
.

Kako je napisano ovo se izvršava kada se postavi stelica na jedan pravougaonik. Kod je takav da drugi okvir pocrveni za neko vreme pa da nestane ali to meni neće da može. Gde je greška? Da li program pamti predhodno stanje t.j. ako je okvir pre petlje zadat da je crven da li je i dalje crven (zapamćen) kad uđe i u petlju? U suštini hteo sam da okvir blinka crveno na 1 sekundu.

Primetio sam da pocrveni pravougaonik tek kad izađe iz zadnje zagrade. Nije mi jasno zbog čega?. Zar ne treba da izvrši naredbu odmah a ne kad se završi ceo ciklus ( do poslednje zagrade)?

I još jednom hvala u napred.

[Ovu poruku je menjao strš dana 15.11.2013. u 19:48 GMT+1]

[Ovu poruku je menjao strš dana 15.11.2013. u 21:31 GMT+1]
 
Odgovor na temu

shpiki
Student
Novi Sad

Član broj: 50342
Poruke: 1651



+62 Profil

icon Re: U vezi postavljanja poligona u 201016.11.2013. u 13:06 - pre 126 meseci
Uf... ovako:
1. ovo nije Visual Basic code, ovo je VB.NET cod (nije VB6 da ne bude zabune, jeste visual basic ali na "visem" nivou, ovo jer .NET app)
2. Koji Visual Studio (VS) koristis?
3. Ako nije VS, u cemu pises programe?
4. Ovaj kod radi ovako:
- prvo ima veze koja je boja pravougaonika bila prethodno (jako bitno)
- ovo je petlja koja traje odredjeno vreme (for petlja traje toliko-i-toliko "taktova" procesora pa sve to puta 50 miliona (50.000.000)) i za to vreme postavlja/"drzi" boju okvira (BorderColor) pravougaonika 4 (rectangleShape4) crveno
- kad izadje iz petlje, postavlja boju okvira na "providnu" (Transparentna - providna, ili jos lakse - nema boje uopste)

E sad, koji deo ti nije jasan?
Opet ti kazem, nemoj da se vezujes na izvrsavanje komandi red-po-red, nije tako prosto kao od mikrokontrolera (da, izvrsava se program red-po-red, ali posto je tvoj rectangleShape4 objekat jako ima veze prethodno stanje, nacin na koji menjas stanje, itd...).

Ovo MouseEnter je event (dogadjaj) na koji se poziva kod ispod.
Dakle, kad kursor misa udje u okvir (MouseEnter) tada se izvrsava deo programa definisan ispod (nesto kao potprogram).
There are only 10 types of people in the world:
those who understand binary, and those who don't.
 
Odgovor na temu

strš
ČAČAK

Član broj: 59295
Poruke: 324



+2 Profil

icon Re: U vezi postavljanja poligona u 201016.11.2013. u 22:46 - pre 126 meseci
Hvala ti na strpljenju koje imaš.
Više puta sam pročitao tvoj odgovor da bih skapirao šta mi objašnjavaš. Ako sam dobro shvatio koristim Visual Studio 2010-ku a jezik je C#.
Ovaj deo ne razumem "ovo nije Visual Basic code, ovo je VB.NET cod (nije VB6 da ne bude zabune, jeste visual basic ali na "visem" nivou, ovo jer .NET app)"? Zar nisam kod napisao C#-u (mislim ono između zagrada for i ostalo)?
Objašnjenje koje si mi dao u vezi koda kako radi razumem, i ja sam mislio da će da uradi isto to ali neće. Kad se postavi kursor na pravougaonik drugi pravougaonik mi ne zacrveni. Gde treba da postavim početno stanje pravougaonika koji treba da zacrveni? Ja sam ga u propertis-u podesio da bude transparentan.

I dalje mi nije jasno kako ovaj kod nije napisan u C#-u?

Izvini ali sad sam zbunjen i razumeću ako mi ne odgovoriš jer verovatno sad misliš "koji tupan".
Pozdrav.
 
Odgovor na temu

shpiki
Student
Novi Sad

Član broj: 50342
Poruke: 1651



+62 Profil

icon Re: U vezi postavljanja poligona u 201017.11.2013. u 11:28 - pre 126 meseci
Citat:
strš: Zar nisam kod napisao C#-u (mislim ono između zagrada for i ostalo)?

Moja greska, povrsno sam pogledao kod, ucinilo mi se da je .NET. Jos jednom izvinjenje.
Kod jeste pisan u C!
Dakle,
Citat:
strš:

private void rectangleShape1_MouseEnter(object sender, EventArgs e)
{
{

for (int i = 0; i < 50000000; i++) // naredba se izvršava unutar zagrada za određeno vreme
{
rectangleShape4.BorderColor = Color.Red; // okvir pocrveni
}

rectangleShape4.BorderColor = Color.Transparent; // okvir nestane
//rectangleShape4.BorderColor = Color.Red;
}

}

Vidis da je event (dogadjaj) pisan za rectangleShape1, i kada kursor misa udje u rectangleShape1 rectangleShape4 ce dobiti crvenu liniju okvira.
Ako hoces da pocetno stanje bordera bude "Transparent", onda moras u kodu da dodas (mislim da je ovako, ne pisem u C# a nemam ni VS) rectangleShape4.BorderStyleTransparent = False (dajem primer iz glave, ponavljam, ne znam kako je tacno). Znaci, moras da postavis da linija (okvir, border) rectangleShape4 prvo NE BUDE transparentna, onda mu podesis boju koju hoces, zatim kad izlazis iz petlje, opet vratis da ti stil bude transparentan...

Sad jasnije?

Citat:
strš:
Izvini ali sad sam zbunjen i razumeću ako mi ne odgovoriš jer verovatno sad misliš "koji tupan".
Pozdrav.

Nemoj tako da razmisljas, normalno je da pitas kad nesto ne znas i tako treba dalje da se vodis, a ne da tvrdis da znas a nista ne uradis.

Dakle, ponavljam, sta god ti nije jasno pitaj, sta budem mogao pomocicu ti...

Pozdrav!
There are only 10 types of people in the world:
those who understand binary, and those who don't.
 
Odgovor na temu

strš
ČAČAK

Član broj: 59295
Poruke: 324



+2 Profil

icon Re: U vezi postavljanja poligona u 201017.11.2013. u 23:50 - pre 126 meseci
Sve je meni jasno ali kod mene neće da radi. Ovako hoće:
Code:

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

namespace WindowsFormsApplication3
{        
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        
        private void rectangleShape1_MouseEnter(object sender, EventArgs e)
        {
           rectangleShape4.BorderColor = Color.Red;
           //OVDE POKUŠAVAM DA DODAM NAREDBU DA MI OKVIR BLINKA
        }
        
        private void rectangleShape4_Click(object sender, EventArgs e)
        {
            rectangleShape4.BorderColor = Color.Transparent;
        }

        private void rectangleShape1_MouseLeave(object sender, EventArgs e)
        {
            this.rectangleShape4.BorderColor = Color.Transparent;
            
        }
    }
}

Kad postavim kursor na prvi pravougaonik, okvir drugog pravougaonika zacrveni a kad sklonim kursor okvir nestane, i to je u redu.
Problem je kad hoću da ubacim naredbu da mi okvir drugog pravougaonika blinka dok je kursor na prvom pravougaoniku za određeno vreme. Neće pa neće. Negde grešim ali ovako neiskusan ne znam gde? Polako čitam literaturu ali mi ovaj problem ne da mira. Moguće da sam celu koncepciju omašio i pokušavam da je na silu proguram?
 
Odgovor na temu

shpiki
Student
Novi Sad

Član broj: 50342
Poruke: 1651



+62 Profil

icon Re: U vezi postavljanja poligona u 201018.11.2013. u 10:44 - pre 126 meseci
Ok, a kako si zamislio da odradis to sa blinkanjem okvira?
Daj to parce koda.

Recimo, malo je bzvz resenje ali bi 99% trebalo da radi:
- Napravi jednu promenljivu tipa Int
- Odredi koliko puta hoces da ti blinka okvir
- kad se desi MouseEnter event (za rectangleShape1) podesi okvir za rectangleShape4 na CRVENO
- izvrti jednu FOR petlju (koliko mislis da je ok)
- vrati boju okvira za rectangleShape4 na TRANSPARENT
- vrti jos jednu FOR petlju
- u uslov za izlazak iz while stavi koliko puta mislis da se ponavlja cela prica (sto je u stvari koliko puta hoces da ti blinka okvir) - to je vrednost promenljive Int koju smo na pocetku definisali

Znaci, imas program:
Code:
okvir crven
     sacekaj xx ms
okvir providan
     sacekaj xx ms
okvir crven
     sacekaj xx ms
okvir providan
     sacekaj xx ms
okvir crven
     sacekaj xx ms
okvir providan
     sacekaj xx ms

i onda napisi sta se desava.

Ideja je kao kod kontrolera gde ti treba neko izvrsavanje van for(; (ili while(1)) petlje.

Javi rezultate.

Pozdrav!
There are only 10 types of people in the world:
those who understand binary, and those who don't.
 
Odgovor na temu

strš
ČAČAK

Član broj: 59295
Poruke: 324



+2 Profil

icon Re: U vezi postavljanja poligona u 201019.11.2013. u 11:49 - pre 126 meseci
Code:

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

namespace WindowsFormsApplication3
{
            
    public partial class Form1 : Form
    {

        public Form1()
        {
            InitializeComponent();
        }
        
        private void rectangleShape1_MouseEnter(object sender, EventArgs e)
        {
            
            rectangleShape4.BorderColor = Color.Red;
            for (int i = 1; i <= 5000000; i++)                                // prazna petlja koja se vrti za određeno vreme (5000000 nečega?)
            {
                ;
            }
            rectangleShape4.BorderColor = Color.Transparent;
            for (int i = 1; i <= 5000000; i++)
            {
                ;
            }
            rectangleShape4.BorderColor = Color.Red;
            for (int i = 1; i <= 5000000; i++)                            
            {
                rectangleShape4.BorderColor = Color.Red;              // petlja u kojoj se naredba ponavlja 5000000 puta da je okvir crven
            }
            rectangleShape4.BorderColor = Color.Transparent;
            for (int i = 1; i <= 5000000; i++)
            {
                rectangleShape4.BorderColor = Color.Transparent;
            }
        }
        
        private void rectangleShape4_Click(object sender, EventArgs e)
        {
            rectangleShape4.BorderColor = Color.Transparent;
        }

        private void rectangleShape1_MouseLeave(object sender, EventArgs e)
        {
            this.rectangleShape4.BorderColor = Color.Transparent;
            
        }

    }

}

Neće da mi odradi bilo da je naredba u petlji ili izvan nje.
Šaljem i exe fajl koji je proizvod ovog koda. Kursor postavi na levu sliku, kolo je prvo gore levo i posmatraj desnu sliku (isto to kolo) samo će da zablinka sivo.

[Ovu poruku je menjao strš dana 19.11.2013. u 13:11 GMT+1]
Prikačeni fajlovi
 
Odgovor na temu

shpiki
Student
Novi Sad

Član broj: 50342
Poruke: 1651



+62 Profil

icon Re: U vezi postavljanja poligona u 201020.11.2013. u 19:05 - pre 126 meseci
Ne mogu da pokrenem app...
Nebitno, 'ajde pokusaj ovako: (nisam pisao u C i u VS2010 pa ne znam da li postoji event)
u VB6 je postojao event MouseMove
sad recimo da namestis da ti se petlja izvrsava na
rectangleShape1_MouseMove(...)

a kad hoces da okvir ponovo postane proziran/providan/transparentan onda u
Form1_MouseMove(...)

dodaj
rectangleShape4.BorderColor = Color.Transparent


Opet kazem, ne bavim se ovim i ne koristim VS2010 (ja sam na VB6, sa njim mogu da napisem sve sto meni treba) ali ideju sam ti dao.
Da li si shvatio sta pokusavam da ti objasnim?

Pozdrav.
There are only 10 types of people in the world:
those who understand binary, and those who don't.
 
Odgovor na temu

strš
ČAČAK

Član broj: 59295
Poruke: 324



+2 Profil

icon Re: U vezi postavljanja poligona u 201020.11.2013. u 19:17 - pre 126 meseci
Na žalost ne shvatam šta hoćeš da mi objasniš. "Skinuo" sam knjigu Visual studio korak po korak i nadam se da ću u njoj naći gde grešim. Tebi hvala u svakom slučaju. Pozdrav.
 
Odgovor na temu

elitemadzone.org :: MadZone :: U vezi postavljanja poligona u 2010

[ Pregleda: 3612 | Odgovora: 18 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.