|
Programiranje Programski jezici, tehnike, alatke... |
|
Alatke vezane za temu | Vrste prikaza |
2.3.2012, 13:15 | #501 |
Član
Član od: 16.4.2010.
Lokacija: Pančevo
Poruke: 462
Zahvalnice: 41
Zahvaljeno 68 puta na 63 poruka
|
Re: How to... C#
|
2.3.2012, 18:13 | #502 |
Veteran
Član od: 3.5.2008.
Lokacija: Beograd
Poruke: 760
Zahvalnice: 81
Zahvaljeno 213 puta na 144 poruka
|
Re: How to... C#
@Todors
Odakle ti ideja da sam pobrkao lončiće. Nekoliko puta sam napisao "referenca na string". Valjda to govori da znam da je string referentni tip. Elem. Izgleda da je String.Intern ono što mi treba. A šteta što .net biblioteka nema kolekciju koja može ovo da radi za bilo koji objekat. |
2.3.2012, 19:04 | #503 |
Starosedelac
|
Re: How to... C#
@ivan
Ništa te ne sprečava da napišeš svoju, možda ovako nešto: Spoiler za Code:
Naravno, u zavisnosti od toga šta radiš ovo može biti potpuno pogrešno, plus, za stringove bi trebao da koristiš ono što sam ti ranije pomenuo (ako uopšte ima smisla, obzirom da stringovi već dele interni pool, kao što si pretpostavljam pročitao). @Todors: Doctionary je u ovom slučaju optimalnije rešenje, obzirom da je pretraga liste uglavnom sporija, u zavisnosti od broja elemenata. Poslednja ispravka: MG-RAY (2.3.2012 u 19:22) |
2.3.2012, 20:56 | #504 |
Član
Član od: 16.4.2010.
Lokacija: Pančevo
Poruke: 462
Zahvalnice: 41
Zahvaljeno 68 puta na 63 poruka
|
Re: How to... C#
@ivan90BG
Izvinjavam se , morao sam nekoliko puta da pročitam to što si napisao da bih shvatio šta si pitao. Mislim da ti je ipak mnogo bolje rešenje da koristiš StringBuilder nego da koristiš String.Intern() i da tako drljaš po groblju stringova . Mogu ti se tako dešavati žešći bagovi, čak ti na to i microsoft ukazuje. @MG-RAY OK, jedino ako su perfomance u pitanju, ali onda bi možda bilo bolje da koristi SortedList i BinarySearch ako su mu performanse na prvom mestu. Kod tebe je možda je bolje da si odma stavio da ti TKey bude tipa GUID, jer je ovako kako si ti stavio je daleko veća šansa da ti se ponovi int i izazove bag. Guid pretraživanje nije mnogo sporije od int-a, ali opet s druge strane ostavlja mnogo manje prostora da se dogodi ponavljanje. |
3.3.2012, 13:37 | #505 |
V.I.P. Programiranje
Član od: 9.1.2009.
Lokacija: Beograd, Banovo Brdo
Poruke: 1.157
Zahvalnice: 83
Zahvaljeno 448 puta na 303 poruka
|
Re: How to... C#
ako je vec zapeo za listom, ne vidim zasto ne bi nasledio klasu lista i prepravio add, remove i druge relavantne metode. add metoda moze da mu vraca referencu ka upravo dodatom objektu ili ka prethodnom ukoliko takav vec postoji i eto, dobio je upravo ono sto je trazio.
Sama implementacija pretrage pa i pool-a moze da bude raznolika u zavisnosti od potrebe za optimizacijom i performansama. |
3.3.2012, 13:47 | #506 |
Starosedelac
|
Re: How to... C#
@Todors
Mislim da nisi shvatio poentu mog predloga (i zadatka). Ideja i jeste u tome da se za iste vrednosti dobije isti hash koji se kasnije koristi za pretragu. ID je samo zbog testiranja tu, ništa više. Takođe, ako imaš bolje rešenje, slobodno ga postavi. Radio sam neke testove performansi sa Hashmapama (Dictionary) i klasičnim listama. Evo rezultata: Spoiler za 49K elemenata, 0,14% šansi za poklapanje vrednosti:
Spoiler za 5K elemenata, 3% šansi za iste vrednosti:
Na X osi je broj elemenata, na Y je vreme izvrsavanja u ms. Videcu da odradim kasnije nesto i za druge kolekcije (sortirane) |
4.3.2012, 14:52 | #507 |
Član
Član od: 16.4.2010.
Lokacija: Pančevo
Poruke: 462
Zahvalnice: 41
Zahvaljeno 68 puta na 63 poruka
|
Re: How to... C#
Jel si izmerio. Baš me zanima.
|
7.3.2012, 10:16 | #508 |
Starosedelac
|
Re: How to... C#
|
21.4.2012, 12:54 | #509 |
Član
|
Re: How to... C#
Da ne otvaram novu temu, a treba mi pomoć oko C#.
Imam matricu textBox-eva u C# formi, koji se redom zovu textBox1, textdBox2, ... Na koji način bi mogao pristupiti n-tom text boxu? Mislim na primera, treba mi promeniti pozadinu u textBox20. Da je to konstantno kucao bi Kod:
textBox20.BackColor = Color.Red |
21.4.2012, 13:02 | #510 |
V.I.P. Programiranje
|
Re: How to... C#
Možeš reference na textboxove smestiti u niz što i nije praktično, ili možda C# nudi neki način da se napravi niz kontrola direktno iz dizajnera (u staroj VB6ici je postojala jako dobra stvar "control array" koja je radila upravo to).
|
21.4.2012, 14:27 | #511 |
Starosedelac
Član od: 8.4.2006.
Lokacija: Beograd
Poruke: 2.589
Zahvalnice: 916
Zahvaljeno 584 puta na 363 poruka
|
Re: How to... C#
Ne znam kako si ih stavljao na formu, ali najbolji nacin da to uradis je preko koda, tada mozes svakom text boxu da podesis polje recimo na textBoxXX.Name = "n m" ,gde n i m su kordinate u matrici. Ja sa nesto slicno radio sa panelima i evo primer.
Kod:
public partial class Form1 : Form { public const int n = 19; public const int m = 19; private System.Windows.Forms.Panel[,] Grid = new Panel[n, m]; // form constructor public Form1() { PlaceGridPanels(); InitializeComponent(); } private void PlaceGridPanels() { this.SuspendLayout(); for (int i = 0; i < GRID_SIZE; i++) { for (int j = 0; j < GRID_SIZE; j++) { this.Grid[i, j] = new System.Windows.Forms.Panel(); this.Grid[i, j].BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.Grid[i, j].Location = new System.Drawing.Point((i * 28) + 1, (j * 28) + 1); // po ovome ih razpoznajes this.Grid[i, j].Name = i.ToString() + " " + j.ToString(); this.Grid[i, j].Size = new System.Drawing.Size(28, 28); this.Grid[i, j].TabStop = false; this.Grid[i, j].BackColor = Color.FromName("White"); Grid[i, j].Click += new EventHandler(Grid_Cell_Click); // ovo je meni trebalo this.Controls.Add(Grid[i, j]); } } this.ResumeLayout(false); } } |
21.4.2012, 14:35 | #512 | |
V.I.P. GNU/Linux
Član od: 1.11.2005.
Poruke: 11.162
Zahvalnice: 2.079
Zahvaljeno 4.921 puta na 2.857 poruka
|
Re: How to... C#
Citat:
Kod:
for (int i = 1; i < 20; i++) ((TextBox) Controls.Find("textBox" + i, false)[0]).BackColor = Color.Red; Kod:
TextBox t = null; for (int i = 1; i < 20; i++) { t = Controls.Find("textBox" + i, false)[0] as TextBox; t.BackColor = Color.Red; } |
|
21.4.2012, 15:57 | #513 |
Član
Član od: 16.4.2010.
Lokacija: Pančevo
Poruke: 462
Zahvalnice: 41
Zahvaljeno 68 puta na 63 poruka
|
Re: How to... C#
Evo napravio sam ti mali programčić kojim možeš lako da pretražuješ kontrole i da ih menjaš po potrebi.
|
Sledeći korisnik se zahvaljuje korisniku Todors na korisnoj poruci: | ||
Luigi (22.4.2012) |
22.4.2012, 22:31 | #514 | |
Član
|
Re: How to... C#
Citat:
|
|
28.4.2012, 13:55 | #515 |
Član
Član od: 31.10.2009.
Poruke: 109
Zahvalnice: 29
Zahvaljeno jedanput na jednoj poruci
|
Re: How to... C#
Eto ja kao odlucio da vezbam malo c# van skole, posto je gradivo svedeno na osnove osnovnih stvari, ali nebitno.
Hteo sam da napravim kopije nekih mini igara (soliter, minesweeper), prost editor slika i editor teksta. Zanimlivo je da sam na netu nasao samo tutorijale za editor teksta, trazio sam trazio ali nista. tj nasao sam za editor slika ali je malo iznad mog nivoa znanja Pa reko da vidim jel ima ovde neka dobra dusa da mi pomogne u potrazi za tim tutorijalima, jer stvarno nemam ideju sta vise da kucam u pretrazivacu, a dug je vikend |
29.4.2012, 13:21 | #516 |
Starosedelac
Član od: 8.4.2006.
Lokacija: Beograd
Poruke: 2.589
Zahvalnice: 916
Zahvaljeno 584 puta na 363 poruka
|
Re: How to... C#
Probaj da odradis prvo Notepad kopiju a posle napredniju verziju Wordpad. Evo za pocetak:
http://www.c-sharpcorner.com/uploadf...ad-in-C-Sharp/ http://forum.codecall.net/topic/4533...-notepad-in-c/ http://www.csharpfriends.com/article...x?articleid=84 Ali ako ne znas bas neke osnovnije stvari, onda uci prvo to. |
29.4.2012, 17:35 | #517 |
Član
Član od: 31.10.2009.
Poruke: 109
Zahvalnice: 29
Zahvaljeno jedanput na jednoj poruci
|
Re: How to... C#
Napravio sam Notepad, oko obrade teksta i rada sa rich text boxom nemam problema, dosta je pojednostavljeno, bukvalno se pola stvari kodira u jednom redu, dok za obradu slika moraju da se pisu markovi konaci za komande tipa rotate, resize itd. pa sam mislio da mi neko sa malo vise znanja pokaze kako se najjednostavnije te opcije napisu.
Nasao sam tutorijal za igru memorije, malo cu se oko toga poigrati pa cu videti da izvucem iz toga nesto za minesweeper. |
9.6.2012, 14:21 | #518 |
Član
Član od: 31.10.2009.
Poruke: 109
Zahvalnice: 29
Zahvaljeno jedanput na jednoj poruci
|
Re: How to... C#
Ok, za sad sam napravio
Notepad Paint Minice Konverter cirilice u latinicu pik, pik, skocko, tref igru pogodi pojam igru Milioner igru i zavrsavam igru memorije, ali ne mogu da je zavrsim jer ne znam kako da odradim da kada se otvore dva polja,a da nisu ista, ne mogu da se otvore nova jednu sekundu, a onda se ta dva polja zatvore. Treba mi ovo za sutra, tako da se nadam da ce neko da procita ovo i resi problem |
9.6.2012, 19:00 | #519 |
Starosedelac
Član od: 8.4.2006.
Lokacija: Beograd
Poruke: 2.589
Zahvalnice: 916
Zahvaljeno 584 puta na 363 poruka
|
Re: How to... C#
To moras sa tajmerom da odradis,i ovako bi islo:
1.) kad otvoris 1. polje ono stoji otvoreno 2.) kad se otvori 2. polje a nisu ista onda moras sva ostala polja da im stavis 2.a) enable=false; (sad ne znam koju si kontrolu upotrebio) 2.b) ili da im unregistrujes click eventove (-=) ali ovo po meni je prljavo resenje jer ako ih ima puno skuplje je sto se tice performasi, jer ce morati ponovo da ih registrujes (+=). 3.) cim se aktivnost sa poljima iskljuci aktiviras Timer Class da posle sekunde zatvori ova 2 polja. Moze ovo da se resi na par slicnih nacina ali zaviis i kako si odradio i ostale delove. |
10.6.2012, 12:26 | #520 |
Član
Član od: 26.10.2011.
Poruke: 43
Zahvalnice: 12
Zahvaljeno 17 puta na 6 poruka
|
Re: How to... C#
Imam problem sa button text. Pravim kalkulator kao maturski rad i ne znam kako da mi tekst button kontrola prikaze superscript, subscript, kosntatnu Pi i ostalo. Funkcije su tu, napisane, kod nije problem, samo izgled buttona. Hvala unapred
|
Bookmarks sajtovi |
Tagovi |
c sharp, c# tutoriali, how to, visual studio |
Alatke vezane za temu | |
Vrste prikaza | |
|
|