Diskuze: pomoc - textbox
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.

Tvůrce

Zobrazeno 18 zpráv z 18.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Co použít label?
TextBox.ReadOnly = true;
@Satik@
A jak jej bude kopírovat?
label je blbost ... budu mít víceřádkové texty
a když dám TextBox.ReadOnly = true; tak to pořád jde zkopírovat(nejde jenom přímo psát) ...
potřebuji aby nešlo nic zkopírovat ...
prostě jako je to u enabled = false, jen tam se změní barva písma a nešla
mi změnit ...
On právě kopírovat nechce, ne?
Honza Bittner : label můžeš mít taky víceřádkový, stačí AutoSize nastavit na false.
No jo - blbě čtu... Label
bych ale stejně nepoužil. Stačilo by do TextBox eventu KeyDown dát:
e.Handled = true;
Nemusíš tedy nic zakazovat - jen uděláš metodu pro KeyDown a do ní vložíš ten příkaz pro ukončení...
Label je nevhodný pro texty. Je to jen label - popisek...
Nestačilo, pořád je tu třeba možnost v TextBoxu text označit myší,
kliknout pravým a dát "Kopírovat"
Nevím o žádném důvodu, proč by label měl být nevhodný pro texty, klidně bych ho použil, pak máš jistotu, že ti ten text nikdo (z běžných uživatelů) nezkopíruje.
Vidíš - zkus si to, TextBox nemá primárně ContextMenuStrip - to si pleteš s RichTextBoxem. Problém to je - jelikož label není vhodný pro delší a už vůbec ne víceřádkové texty... Jak jsem psal - ať použije TextBox a v KeyDown ať pohlcuje stiské klávesy...
Zkusil jsem. Zkus si to i ty . Nabídka funguje i když jsem žádné menu nevytvářel.
Přidávám screen, je to obyčejný textbox, ReadOnly nastaveno na true.
Pod něj jsem plácl ještě jeden label a do něj dlouhý text, a nevšiml jsem si, že by s tím byl někde nějaký problém, proto by mě zajímal tvůj důvod, proč se podle tebe na tohle label nehodí.
ReadOnly dej false... Dej tam to odchycení kláves. Popř. nastav ContextMenuStrip na false/null - ale prostě Label je pro popisky.
Vaříš z vody a moc ti to nejde.
e.Handled = true;
jsem přidal, nic se nezměnilo, dokonce i CTRL+C stále funguje.
ReadOnly na to vliv nemá vůbec, to ovlivňuje jen, jestli může uživatel měnit ten text (ale taky jsem zkoušel obě hodnoty, pro tvůj klid v duši).
ContextMenuStrip je už defaultně nastaven na (none).
Pořád jen píšeš, že label je pro popisky, ale pořád nevidím žádný argument, proč by se nemohl použít i pro delší text.
Možná si nerozumíme v pojmu dlouhý text - je podle tebe text přes půl formuláře už dlouhý text nebo ještě ne?
potřebuji aby byl ten text jako obrázek ...
prostě se nedá zabrat/vybrat/zamodrit (nebo jak tomu chcete rikat) a ani aby
se nedal kopirovat ...
asi ale zvolím tu variantu s labelem ...
tak super ! ten label je dokonalej
díky moc Luboš Běhounek Satiku (i ty matesax) za snahu
Z běžných komponent, které umějí zobrazovat text a ten text na nich
nejde označit(->ani kopírovat) moc není, kromě labelu to jsou v podstatě
už jen button a picturebox. Button se na to moc nehodí a u pictureBoxu by sis
musel ručně řešit zalamování řádků, nejjednodušší to je s
labelem.
Jedině si pak napsat vlastní komponentu
ok tak díky moc !
Zobrazeno 18 zpráv z 18.