Překrývaní groupbox – .NET – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Překrývaní groupbox – .NET – Fórum – Programujte.comPřekrývaní groupbox – .NET – Fórum – Programujte.com

 

Toto vlákno bylo označeno za vyřešené — příspěvek s řešením.
wreis330
Duch
5. 8. 2013   #1
-
0
-

   

Zdravím všechny,
potřeboval bych poradit s překrývaním groupbox. Mám 2x button ve Form1.cs[Design] (při stisku 1.buttonu se zobrazí groupbox1 a další prvky) a teď nevím jak dostat další groupbox na to samé místo v Form1.cs[Design], pokud to tam naskládám na sebe, tak to bude pěkný guláš. ( vím že to jde napsat ručně do každého buttonu   , ale snad existuje i lepší způsob).

Díky všem za rady.

wreis33

Nahlásit jako SPAM
IP: 89.103.150.–
Matěj Andrle
~ Anonymní uživatel
1347 příspěvků
6. 8. 2013   #2
-
0
-

Fuj. Pojmennování Form1 a další podobné paskvily ihned odstraň. Podívej se, jak se v celém .NET pojmenovává. Pojmenovávej zrovna tak. A tím myslím doslova - používej co nejvíce stejných proměnných pro různé objekty. TextBox.Text, Control.Text, Button.Text (ano vše je z Control - přesto je snad jasné, jak to myslím),... Jak jsem psal - pořádně si to prohlédni a pochopíš, jak pojmenovávat správně. (Tím mám na mysli, aby jsi se vyvaroval i vlastnímu pojmenovávání ve zkratkách atp.) Čím více se naučíš dělat objekty nezaujaté (dělat obecná řešení), tím více se ti začnou opakovat různé části - včetně proměnných. Pak už to půjde samo. Dále nevidím důvod, proč používat designer, který absolutně znemožní do kódu zasáhnout - jelikož ho tak zprasí, že se v tom nedá vyznat. Nedoporučuji používat designer z VS. Snažit se klikací akcí dosáhnout toho samého jako při vlastním programovém návrhu je nemožné... Také doufám, že necpeš do formulářů žádnou logiku - a že umíš programovat objektově. (Tedy udělat všechny objekty tvé aplikace nezaujaté, zapouzdřené atd.) Logika by měla být pouze v třídě s Main. (Což by měla být samotná aplikace.) V Main by jsi měl aplikaci vyvtářet voláním nezaujatých objektů a parametrizováním objektů používáním jejich výstupů, jako vstupů do jiných objektů... Téže všechny zaujaté hodnoty by jsi v objektech měl předělat na proměnné - a dosadit je až v samotné aplikaci. (Toho docílíž, když budeš přemýšlet, co vše by mohli ostatní aplikace chtít mít jinak.)

Nahlásit jako SPAM
IP: 78.136.150.–
Matěj Andrle
~ Anonymní uživatel
1347 příspěvků
6. 8. 2013   #3
-
0
-

*docílíš

Nahlásit jako SPAM
IP: 78.136.150.–
Matěj Andrle
~ Anonymní uživatel
1347 příspěvků
6. 8. 2013   #4
-
0
-

Nejsprávnější by bylo pojmenování - TvojeNamespace.Form Pokud by jsi měl hiearchii Formů, tak i nějaké bližší určení...

Nahlásit jako SPAM
IP: 78.136.150.–
Řešení
LukoSS
~ Anonymní uživatel
73 příspěvků
6. 8. 2013   #5
-
+2
-
Zajímavé
Vyřešeno Nejlepší odpověď

#2 Matěj Andrle
To ses rozhodl, že budeš tady na fóru odrazovat všechny začátečníky od programování? Protože jinak si ty tvoje příspěvky vysvětlit nedokážu. V původním příspěvku nevidím žádný dotaz na to, jak se správně pojmenovává, ani na to, jestli postupuje správně objektově, ani nic jiného, na co se jakoby snažíš odpovídat. Honit si ego kritizováním lidí, co se chtějí naučit programovat, dokáže každý. Ale že by ses třeba pokusil odpovědět na dotaz nebo tazatele nasměrovat správnou cestou, to už není taková zábava, co? Chtěl bych vidět tvoje první kódy, jestli dodržují všechny pravidla OOP a všechny proměnné a metody jsou v nich výstižně pojmenovány.

#1 wreis33
Stačí nastavit oběma GroupBoxům stejnou pozici, a prvky, co jsou v nich, se přesunou samy. Pokud máš na formuláři místo, tak můžeš mít jeden GroupBox vedle toho druhého a až za běhu programu jej můžeš přesunout na místo toho druhého. Samozřejmě je potřeba myslet na to, že pokud je jeden GroupBox viditelný, tak ten druhý musíš zneviditelnit, protože jinak by šel vždycky vidět jen ten, který jsi přidal jako první.

Nahlásit jako SPAM
IP: 88.103.252.–
Matěj Andrle
~ Anonymní uživatel
1347 příspěvků
6. 8. 2013   #6
-
0
-

#5 LukoSS
Já mu odpověděl - že nevidím problém v tom, napsat to kódem - naopak, že nedoporučuji VS generátor. Za další když vidím Form1 a další stopy začátečníka, tak ano, mám potřebu mu pomoci. Je to fakt takový problém? Ne - to spíš ty si tu honíš ego. Nevidím nic odrazujícího na tom, když mu napíši, ať nepojmenovává Form(1-1000), ale ať pojmenovává objektově... Naopak mě to stojí čas atd. Navíc nejsem schopen emocionality - tudíž ani nemám ego...

Nahlásit jako SPAM
IP: 78.136.150.–
liborb
~ Redaktor
+18
Guru
6. 8. 2013   #7
-
0
-

#1 wreis33
A nebylo by místo tlačítek lepší použít záložky (TabControl)?

Nahlásit jako SPAM
IP: 188.75.135.–
Evzen+2
Návštěvník
6. 8. 2013   #8
-
+1
-
Zajímavé

#5 LukoSS
Musím se zastat LukaSS. Už delší dobu sleduji toto fórum a příspěvky od Matěje. Matěj má teď pravděpodobně prázdniny a zkouší si doma programovat. Dle jeho prvních příspěvků to tak i vypadalo kdy řešil ryze enterprise problémy typu: "Nejde by Console.Beep()".

Pravděpodobně si načetl během prvního měsíce nějakou chytrou knížku/článek a poslední dobou nedělá nic jiného než že buzeruje ostatní ohledně pojmenování a neustále se honosí jak navrhnout pořádný OOP kód. 

Popravdě jsem mu chtěl už několikrát napsat, aby se uklidnil, ale pak jsem si říkal, že za chvíli skončí prázdniny a bude tu opět klid.

Když už se to tu ale nakouslo, tak to sem napíšu.

Matěji, jediný kdo si tu honí ego jsi ty a nemalou dobu to sleduji. Jestli máš tak strašnou touhu všechny poučovat, tak si založ blog a tam si vylejvej svoje srdíčko, jak všichni programátoři píšou jako prasata a čekají na tebe až spasíš svět.

Až tu najdeš dotaz typu "Chtěl bych poradit jak správně navrhnout či pojmenovat .. ", tak tam se můžeš vyřádit, ale začínat každý druhý příspěvek stylem "fuj fuj fuj, takhle ne ne ne.." je dost dost ubohý a věř, že i dost odrazující. Takhle nikoho programovat nenaučíš. Osobně bych chtěl vidět nějaký tvůj zdrojový kód, když jsi takový skvělý programátor.

P.S.: Při nejhorším si počkáme až děti budou muset zpět do školy..

Evžen

Nahlásit jako SPAM
IP: 193.179.183.–
Matěj Andrle
~ Anonymní uživatel
1347 příspěvků
6. 8. 2013   #9
-
0
-

:) Programuji 5 let (a to mám zvýšenou schopnost se učit díky Aspergerovu syndromu) - a 2 roky mi za to platí ve firmě. Znám PC od strojových instrukcí. Takže je vtipné sledovat, jak se mě snažítě ponižovat... Mohu ti tu klidně 2 hodiny vykládat, jak postupuje virtuální stroj .NET k CIL, pak přes interpret do strojáku. Mohu rozebrat celý Windows, Unix, Linux, DOS tak, aby jsi chápal co by bylo třeba udělat pro vytvoření CIL interpetu atd. Mohu x hodin vykládat o celém C#. Ale místo toho chlubení tu radím jak jen můžu. Znám dokonale RT systémy - v těch chráněných trochu pokulhávám. Nejvce se vyznám v Unixu. Atd. Nebudu se tu zdržovat - nemám to zapotřebí... (Nepíši sem kvůli prázdninám - je to jen shoda okolností - i ve školních dnech programuji celé dny - je to kvůli tomu syndromu - je to to hlavní, co dělám - celých 5 let od rána do večera...)

Nahlásit jako SPAM
IP: 78.136.150.–
Matěj Andrle
~ Anonymní uživatel
1347 příspěvků
6. 8. 2013   #10
-
0
-

Jsem tu patrně jeden z mála, kdo se zajímá o to, co se děje tam dole. Tedy když jsem nadhodil TTY, atd., tak se na mě vrhli tak jako vy, že si honím ego. Vysvětli mi tedy bitový rozsah, registry procesoru atd. (Já bych to mohl popisovat každou isntrukci co se tíče mikroprocesorů, AMD a Pentium...)

Nahlásit jako SPAM
IP: 78.136.150.–
Matěj Andrle
~ Anonymní uživatel
1347 příspěvků
6. 8. 2013   #11
-
0
-

tu, týče

Nahlásit jako SPAM
IP: 78.136.150.–
Evzen+2
Návštěvník
6. 8. 2013   #12
-
+1
-
Zajímavé

Všechno umím, všechno znám. Matěj Andrle, léta páně 2013

Tohle je můj poslední komentář k tvým příspěvkům, vem si z toho co chceš.

Ani můj vysokoškolský učitel programování Doc. Ing. Pavel Herout, Ph.D., jistě znáš jeho knihy, si nikdy nedovolil říct, že všechno umí a všechno zná. Všichni učení lidi totiž čím dál víc zjišťují, že vlastně nic neví, protože jsou to velice rozsáhlá témata a nezbývá nic jiného než se zaměřit na jednu specifickou oblast.

Na to pak přesně sedí citát: "Vím, že nic nevím."

Jedině blbec o sobě prohlásí, že všechno zná a umí.

Ale dejme tomu, že ty jsi jediný případ na světě u kterého by to tak skutečně bylo (ryze hypoteticky). 

Já osobně bych tě do týmu nechtěl ani za zlatý prase, to si radši vezmu k sobě studenta, který ví, že je před ním velká a dlouhá cesta, ale má chuť se učit a je týmovým hráčem.

Věř tomu, že dnešní IT firmy nehledají lidi, kteří všechno znají a umějí, ale naopak lidi, kteří jim zapadnou to týmu. Nikdo si totiž kvůli jednomu nadanýmu programátorovi nenechá zničit funkční oddělení.

A ještě jedna věc, můj předchozí šéf, budiž mu země lehká mi vždycky říkal dvě věty:

"Před tím, než něco vypustíte z pusy se zhluboka nadechněte, napočítejte do 3 a pak mluvte".

"Příště lépe".

Přeji příjemný den,

Evžen

Nahlásit jako SPAM
IP: 193.179.183.–
LukoSS
~ Anonymní uživatel
73 příspěvků
6. 8. 2013   #13
-
0
-

Fuj. Pojmennování Form1 a další podobné paskvily ihned odstraň.

Tímto se jako snažíš někomu pomoct? Co takhle místo toho slušně napsat, že je dobré si zvyknout na pojmenovávání formulářů?

Podle toho, co o sobě píšeš, tak jsi naprosto geniální člověk, takže moc nerozumím tomu, proč nedokážeš pochopit, že těmi tvými "radami" dosáhneš akorát toho, že se ti lidi na programování buď vykašlou, nebo v lepším případě přestanou chodit na tohle fórum.

A na Aspergerův syndrom to nehaž, ten člověku nebrání chovat se slušně a rozhodně člověka nezbavuje ega.

Nahlásit jako SPAM
IP: 88.103.252.–
Matěj Andrle
~ Anonymní uživatel
1347 příspěvků
6. 8. 2013   #14
-
0
-

Kde kurník píši, že vím vše? "Vím, že nic nevím." je přesně ten citát, který mě provází celým životem. Napsali jste, že nevím nic, napsal jsem, že vím více, než mnozí jiní. Kteroužto větou nepochopivše docházíte k názoru, že výpodvědní hodnota mého příspěvku má poukazovat na fakt, že objem nabitých znalostí mě zaslepil? Bránice sa, napadají mne více a více - co psáti na to tedy, když nemohu vypověděti, že není pravdy na tom, že znalosti chybí mi, či snad moudrost, či snad soucitné empatie vdech? Zahledíce sa do příspěvků svých, kde nalézáte jiného, než mého vyřčení? Sami sa brání stejň a přec sa cítí býti víc... Hodnotíce mne, nechápou více, než obraz horizontu, co před očima skrýc jim svět... Tak odvděčí sa proň? Tak dojdou lepšího zaň? Kde bere se ta lidská pýcha a kde zdroj vaší arogance jest? Ni pár rad navíc dát nemohl bych proč? Když nenapíši dnes, zítra ptáti bude sa zas. Pekelná diskuze další počne zas. No mám já zapotřebí toť?

Nahlásit jako SPAM
IP: 78.136.150.–
TheOndrap+2
Super člen
6. 8. 2013   #15
-
+1
-
Zajímavé

#14 Matěj Andrle
Ty seš prostě pacient   

Nahlásit jako SPAM
IP: 88.102.250.–
ZČU v Plzni je mnohem víc, než jenom právnická fakulta !!
Fakulta aplikovaných věd www.fav.zcu.cz
"Když nedokážete říci věci jednoduše, pak jim dostatečně nerozumíte"
Mutagen0
Super člen
7. 8. 2013   #16
-
0
-

Je to sice mimo téma na co se ptal autor tematu, ale musím.

Z toho prvního postu co sem napsal Matěj já sám pořádně nechápu a to, že v .NET dělám už skoro 4 roky a sám sem z toho jelen a nechápu to prostě, ale možná to je tím, že pořádně neznám teorii ale spíš mám praxi. Objekty zvládám s přehledem, ale zapouzdření, nezaujaté objekty, nebo logiku do formulářů (to vůbec nevim jako co si pod tím představit) nebo parametrizování jsem v životě neslyšel a zvládám programovat ... A co teprve nějakej nováček co si zkouší prostě něco napsat a nejde mu to? Popřípadě byl by někdo schopný mi vysvětlit na email (OHladik05@seznam.cz) co znamenaj ty věci co jsem vyjmenoval? Nejlépe s ukázkou kodu protože z kodu to poznám líp ... Díky.

Nahlásit jako SPAM
IP: 89.190.90.–
Matěj Andrle
~ Anonymní uživatel
1347 příspěvků
7. 8. 2013   #17
-
0
-

Neumíš programovat - takže jsi 4 roky zahodil. Já nechápu, kde se ve Vás bere ta neznalost, ale ještě mi proto nemusíte říkat biflovač knih, co praxi nezná. Já se zásadně učím praxí - jinak mi to ani nejde... Logika je negrafická část aplikace. A je základ nemíchat logiku a grafiku. Do Formuláře nepatří naplňování eventů logickým kódem. (Což je prostě kód co už něco vykonává - nestará se o ztvárnění dat, ale spravuje je.) Proto se ve Formuláři, Controlu atd. do eventů a dalších míst, která se střetávají s logikou, dává pouze ta část logiky, která stále pracuje s grafikou, ale potřebuje k tomu alespoň trochu logiky. (Textbox má v eventu IsInputKey naplňování proměnné Text ze vstupu uživatele atd.) To proto, že Forms jsou zastaralé a nevhodné. Zato WPF nádherně odděluje logiku od grafiky - a to je přesně trend nové doby. OOP je sada objektů, do kterých si dosazuješ konkrétní hodnoty. Dáš objektu parametry - a on je dosadí do obecného řešení. Dále OOP pojmenovávání je tatktéž známkou ztráty času. Pokud používáte své názvy - svůj systém - nějaké zkratky atd., tak je to program na vyhození. Stačí otevřít oči a podívat se do .NET. Jména se v objektech neustále opakují. Mění se pouze cílový objekt - ne pojmenování...

Nahlásit jako SPAM
IP: 78.136.150.–
wreis330
Duch
7. 8. 2013   #18
-
0
-

1. Základní pojmenování jsem použil jen tady (v aplikaci mám vlastní a pro MOJE potřeby přehledné, protože je to jen na naučení)

2. Na pojmenování jsem se opravdu neptal

3. LukoSS :Děkuji za radu a zkusím to. ( "Visible" jsem jsem si našel na netu + jak stím pracovat a možnosti změny "true" , "false" , nebo "show").

4. Liborb : Taky jsem nad tím přemýšlel, ale nakonec jsem se rozhodl pro groupBox, protože základní přehled by nebyl přehledný.

Děkuji všem za rady.

wreis33

P.S.: Tak jsem to odzkoušel a je to podle představ. Téma nechám do pátku 9.8. Třeba se najde další názor a pak téma uzavřu. Doufám :)

Ještě jednou všem děkuji za názory, ať jsou k tématu, nebo ne. Každá rada se cení.

Nahlásit jako SPAM
IP: 89.103.244.–
Mutagen0
Super člen
7. 8. 2013   #19
-
0
-

#17 Matěj Andrle
Aha já neumím programovat, zajímavý je, že ve škole jsem v programování věděl víc jak učitel, kterej to vyučoval a skoro furt chtěl vysvětlit po mě co všechno sem to vlastně napsal. Pak jsem se dostal i do krajskýho kola v programování. To je nic a já vlastně neumím programovat, víš jak po tom co jsi napsal, že neumím programovat mám chut s tím seknout? Velkou a takhle ty odrazuješ nováčky akorád. Sice neznám odborný názvy těch věcí, ale vím jak má vypadat program a jak to napsat aby to bylo co nejlepší. Tak neříkej, že neumím.

Nahlásit jako SPAM
IP: 89.190.90.–
TheOndrap+2
Super člen
7. 8. 2013   #20
-
0
-

#19 Mutagen
Ho neřeš a programuj, je pravda že když se učíš programovat tak nějak koncepčně, tak k věcem co psal "pacient" stejně dojdeš, nevím kolik ti je jestli 19 tak v tom nevidím problém a když se budeš chtít programování věnovat tak se to chtě / nechtě budeš muset naučit. Pokud ti je 30 a seš programátor, tak ejhle (tomu ale nevěřím). 

Hold někdo s pokorou poradí když někdo potřebu, někdo "snědl Šalamounovo hovno" a musí si na ostatních honit ego, s tím že je stejně za šaška. KAŽDOPÁDNĚ TO NEŘEŠ A PROGRAMUJ DÁL   

Nahlásit jako SPAM
IP: 88.102.250.–
ZČU v Plzni je mnohem víc, než jenom právnická fakulta !!
Fakulta aplikovaných věd www.fav.zcu.cz
"Když nedokážete říci věci jednoduše, pak jim dostatečně nerozumíte"
liborb
~ Redaktor
+18
Guru
8. 8. 2013   #21
-
0
-

#18 wreis33
GroupBox můžeš dát i na záložku v TabControl ;) 

Nahlásit jako SPAM
IP: 188.75.135.–
wreis33
~ Anonymní uživatel
3 příspěvky
12. 8. 2013   #22
-
0
-

Je me jasny,ze 90% veci delam jinak, nez se ma. Nejak se, ale musi zacit. :)

Zasláno z mobilního telefonu.

Nahlásit jako SPAM
IP: 82.145.209.–
VladislavK0
Super člen
13. 8. 2013   #23
-
0
-

Taky přidám myšlenku

Všichni nebo alespoň převážná část zde zainteresovaných lidí pamatují p. Tomáše Českého (typicky z buildru) ten uměl být také arogantní ale na druhou stranu se neodkláněl od podaného dotazu a zpravidla pomohl mnohdy i rozsáhlým kódem, který vytvořil jak on sám říkal během stejné doby co potřeboval na vypití šálku dobré kávy.

Raději by zde viděl opět TC než MA

To Evžen s níže uvedenou myšlenkou plně souhlasím

Tohle je můj poslední komentář k tvým příspěvkům, vem si z toho co chceš.

viz obdobný závěr vlákna

http://programujte.com/forum/vlakno/24996-datagridview-a-dynamicke-property-na-tride-datasource/

Jen tak pro zajímavost i TC v tom předloženém kódu používal automatická jména.

To Wreis33

Výše uvedená myšlenka s TabControlem je dobrá, ja podobně věci řeším tak že se celkově tváří jako běžně známí wizárd

Udělam si UserKontrolku kterou zdědím z TabControlu a do ni vložím jednu důležitou overidovanou metodu viz nasledující kousek kódu

   public class WizardTabControl: TabControl
    {
        protected override void WndProc(ref Message m)
        {
            // skryje nežádoucí ouška záležek
            if (m.Msg == 0x1328 && !DesignMode) m.Result = (IntPtr)1;
            else base.WndProc(ref m);
        }
    }

Ale protože to je dědění z tabcontrolu tak ti zůstanou zachovány všechny featury toho tabcontrolu

snad jsem ti pomohl.

Nahlásit jako SPAM
IP: 37.48.41.–
Manželka programátora pošle svého muže koupit chleba s dovětkem kdyby měly housky přines jich deset! Co přinese programátor??
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 11 hostů

Podobná vlákna

Překrývání intervlů — založil Petr

Překrývání objektů — založil himzu7

Překrývání obrázků — založil Thomas

Překrývání Metod — založil Michal

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý