Diskuze: Problém s vkládáním do schránky

C# .NET .NET (C# a Visual Basic) Problém s vkládáním do schránky American English version English version

Avatar
Daniel Vítek
Tým ITnetwork
Avatar
Daniel Vítek:

Mám menší problémek s vkládáním...
...mám textbox jmeno = text_veschran­ce_novy

string novytext_doschranky;
novytext_doschranky = text_veschrance_novy.ToString();
Clipboard.SetText(novytext_doschranky);

Do schránky se to uloží,ale když to potom někam vložím,vloží se toto..
(do schránky jsem zadal "Ahoj")
System.Window­s.Forms.TextBox, Text: Ahoj
..co s tím ? Jde odstranit to "System.Window­s.Forms.TextBox, Text:" ??

 
Odpovědět 21.7.2012 15:41
Avatar
matesax
Redaktor
Avatar
Odpovídá na Daniel Vítek
matesax:

Ty nevkládáš text, ale Contol - z něj musíš text vytáhnout - pokud se tvůj TextBox jmenuje textBox1
tak zadej:

Clipboard.SetText(this.textBox1.Text)

Už jsem ti jednou říkal ať nezakládáš zbytečné lokální proměnné - místo:

 string novytext_doschranky;
novytext_doschranky = text_veschrance_novy.ToString();
Clipboard.SetText(novytext_doschranky);

By stačilo:

Clipboard.SetText(this.textBox1.Text)
 
Nahoru Odpovědět 21.7.2012 16:07
Avatar
matesax
Redaktor
Avatar
 
Nahoru Odpovědět 21.7.2012 16:08
Avatar
Daniel Vítek
Tým ITnetwork
Avatar
Avatar
matesax
Redaktor
Avatar
Odpovídá na Daniel Vítek
matesax:

A ještě jedna věc - když už zakládáš zbytečné lokální proměnné, tak je alespoň nenatahuj:

 string novytext_doschranky;
novytext_doschranky = text_veschrance_novy.ToString();

Je v tomto případě prasárna - stačí:

string novytext_doschranky = text_veschrance_novy.ToString();

Ale znovu píši - toto celé bylo zbytečné - nač předrávat data jako horký brambor - čím kratší kód a cesty v něm, tím lépe,...

Co se týče oddělené inicializace - že napíšeš pouze třeba:

string p;

To se dělá třeba v případě pole, kde nevíš předem přesný rozměr - tak to neinicializuješ hned, ale až v momentě, kdy ten rozměr budeš schopen určit,... Nebo když jako parametr bude třeba "this",... Ale tady to bylo úplně zbytečné,...

 
Nahoru Odpovědět 21.7.2012 16:15
Avatar
matesax
Redaktor
Avatar
Odpovídá na Daniel Vítek
matesax:

Jo a string (což je tento případ) obsahuje metody replace, remove, find, substring,... Pořádně si projeď internet - nejlépe server http://msdn.microsoft.com (http://msdn.microsoft.com/…28v=vs.71%29)

Tam je kompletní a podrobná knihovna,...

 
Nahoru Odpovědět 21.7.2012 16:19
Avatar
matesax
Redaktor
Avatar
Odpovídá na Daniel Vítek
matesax:

A poslední rada - kilometrové názvy zbytečně zdržují a snadno pak dúděláš chybu - jak jsem již napsal - vše je nejlepší co nejkratší,... Třeba novytext_doschranky bych já (ne všichni by souhlasili) použil clpNewText,...

 
Nahoru Odpovědět  +1 21.7.2012 16:22
Avatar
matesax
Redaktor
Avatar
Odpovídá na matesax
matesax:

předrávat = předávat - měl jsem zdravotní problémy... :)

 
Nahoru Odpovědět 21.7.2012 16:24
Avatar
Odpovídá na matesax
David Jančík [sczdavos]:

A hlavně je mnohem úhlednější používat CamelCase místo podtržítek. Je to nepsané pravidlo a praktivky veškeré zdrojové kódy v C like jazycích - C# a Java jej používají. V Javě je první písmenko malé v C# velké. Zvykl jsem si toto používat i v PHP.

Nahoru Odpovědět 21.7.2012 16:49
Čím více času dostaneš, tím méně ho máš.
Avatar
Daniel Vítek
Tým ITnetwork
Avatar
Odpovídá na matesax
Daniel Vítek:

Mám ještě jeden dotaz...
Když jsem klikl na název projektu,pravé tlačítko > add > AboutBox
Jak to mám otevřít ?

 
Nahoru Odpovědět 21.7.2012 17:00
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Daniel Vítek
David Čápka:

AboutBox je objekt (jako vše v C#), abys ho mohl vyvolat, musíš ho tedy vytvořit, např. takto:

aboutBox = new AboutBox1();
aboutBox.Show();

Zakládej prosím nová vlákna, nebaví nás to stále rozdělovat.

Nahoru Odpovědět 21.7.2012 17:13
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Daniel Vítek
Tým ITnetwork
Avatar
Odpovídá na David Čápka
Daniel Vítek:

Nojó,nechtěl jsem moc spamovat :D
To jsem zkoušelmukázal se mi jiný...

 
Nahoru Odpovědět 21.7.2012 17:26
Avatar
Kit
Redaktor
Avatar
Odpovídá na David Jančík [sczdavos]
Kit:

CamelCase je jen jednou z mnoha možností, které je vhodné kombinovat. Třeba takto:

  • NázevTřídy
  • instance_třídy, lokální_proměnná
  • metodaTřídy
  • NĚJAKÁ_KONSTANTA
Nahoru Odpovědět 21.7.2012 20:43
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Kit
Redaktor
Avatar
Odpovídá na matesax
Kit:

Kilometrové názvy proměnných nevadí, pokud máš dobrý textový editor, který umí doplňovat slova.

Jako vždy: Všeho s mírou. Příliš dlouhé názvy znepřehlední aplikaci a také svědčí o chybné dekompozici zadání.

Nahoru Odpovědět 21.7.2012 21:33
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 15 zpráv z 15.