Autor Téma: AdvStringGrid  (Přečteno 1173 krát)

Marek.V

  • Host
AdvStringGrid
« kdy: 01-02-2019, 19:06:43 »
Zdravím Vás.
Když ve AdvStringGrid - ob.insector - options zaškrtnu goRowSizing mohu si změnít šiřku řádku.
Nefunguje to ale v tom prvním šedem řádku .
Potřebují do něj dostat text na vice řadcích.
Jde to nějak?

Jsem si myslel že když ten první řáek odstraním, FixedRow  := 0;, bude vše vyřešene.
Potřebují však do tabulky zapisovat data, takže když jsem odstraníl ten první šedý řadek a misto něj použil bunky gridu, da se zapisovat i do ních a text přepsat.
Neporadí někdo jak by se to dalo pořešit??

Offline Jirka Ondricek

  • Mladík
  • **
  • Příspěvků: 76
  • Karma: 4
    • Verze Delphi: 10.2 Tokyo, 10.3 Rio
Re:AdvStringGrid
« Odpověď #1 kdy: 01-02-2019, 19:24:00 »
Pokud vím jde minimálně využít zápis s Carriage return např:
Kód: Delphi [Vybrat]
  1. AdvGrid.Multilinecells:= true;
  2. AdvGrid.Cells[1,0]:= 'první řádka' + #13 + 'druhá řádka';
Jen musí být povoleno to Multilinecells, bez něj to část za CR ignoruje.
A platí to i pro FixedCells.

Marek.V

  • Host
Re:AdvStringGrid
« Odpověď #2 kdy: 01-02-2019, 19:44:13 »
Děkují moc ale nepomohlo.
http://img24.cz/images/60495514832879433687.png


Offline Jirka Ondricek

  • Mladík
  • **
  • Příspěvků: 76
  • Karma: 4
    • Verze Delphi: 10.2 Tokyo, 10.3 Rio
Re:AdvStringGrid
« Odpověď #3 kdy: 01-02-2019, 19:59:02 »
Po načtení dat přidat:
Kód: Delphi [Vybrat]
  1. AdvGrid.AutoSizeColumns(true);
  2. AdvGrid.AutoSizeRows(true);
Popřípadě jsou tam další metody Autosize jen pro konkrétní řádky nebo sloupce.

Marek.V

  • Host
Re:AdvStringGrid
« Odpověď #4 kdy: 01-02-2019, 20:06:31 »
Děkují moc  ;)

A kdybych chtěl ten text v obou řadcích vycentrovat doprostřed?
Ale jen v tom prvním řadku.

Offline Jirka Ondricek

  • Mladík
  • **
  • Příspěvků: 76
  • Karma: 4
    • Verze Delphi: 10.2 Tokyo, 10.3 Rio
Re:AdvStringGrid
« Odpověď #5 kdy: 01-02-2019, 20:13:17 »
Děkují moc  ;)

A kdybych chtěl ten text v obou řadcích vycentrovat doprostřed?
Ale jen v tom prvním řadku.

Na centrování je událost OnGetAlignment. V ní se dá centrovat vertikálně i horizontálně každá buňka zvlášť. Ale každý řádek jinak, to fakt nevím. Na webu mají ke stažení velmi slušný návod a dokonce sekci tipů, možná jestli v nich nebude nějaká rada.

Marek.V

  • Host
Re:AdvStringGrid
« Odpověď #6 kdy: 01-02-2019, 20:34:11 »
Funguje, dik.

Marek.V

  • Host
Re:AdvStringGrid
« Odpověď #7 kdy: 02-02-2019, 20:42:56 »
Bych měl ještě jeden.
Options
goEditing - uživatel může vpisovat svůj text do tabulky
goAlwaysShowEditor - pokud je goEditing True, začne se text v poli editovat hned po prvním kliknutí (jinak až po druhém)

U goAlwaysShowEditor nevidím žadný rozdíl, když kloknu na bunku, zbarví se modře a až duhý klik začne v bunce blikat kurzor a mohu editovát.
Bych to potřebovál bez toho modreho zabarvení - první klk.




Offline Jirka Ondricek

  • Mladík
  • **
  • Příspěvků: 76
  • Karma: 4
    • Verze Delphi: 10.2 Tokyo, 10.3 Rio
Re:AdvStringGrid
« Odpověď #8 kdy: 02-02-2019, 20:52:12 »
Bych měl ještě jeden.
Options
goEditing - uživatel může vpisovat svůj text do tabulky
goAlwaysShowEditor - pokud je goEditing True, začne se text v poli editovat hned po prvním kliknutí (jinak až po druhém)

U goAlwaysShowEditor nevidím žadný rozdíl, když kloknu na bunku, zbarví se modře a až duhý klik začne v bunce blikat kurzor a mohu editovát.
Bych to potřebovál bez toho modreho zabarvení - první klk.

Koukni na MouseActions. Konkrétně by mohl pomoct DirectEdit. Tedy pokud jsem to pochopil správně.  :)

Marek.V

  • Host
Re:AdvStringGrid
« Odpověď #9 kdy: 03-02-2019, 09:51:56 »
Citace
Koukni na MouseActions. Konkrétně by mohl pomoct DirectEdit. Tedy pokud jsem to pochopil správně.  :)

Je to vončo  ;)
Kde jste to info našel?
Když vložite v projektu na form AdvStringGrid, je první bunka vlevo náhoře zbarvena modře.
Da se to někde vypnout, je to tak v sample asg10.

PS: Object Inpector - Propertis
Da se toto nastavení najít někde jako text?
Když vemu 2 x AdvStringGrid a chtěl bých třeba v  PS padu porovnat Object Inpector - Propertis

Offline Jirka Ondricek

  • Mladík
  • **
  • Příspěvků: 76
  • Karma: 4
    • Verze Delphi: 10.2 Tokyo, 10.3 Rio
Re:AdvStringGrid
« Odpověď #10 kdy: 03-02-2019, 11:22:57 »
Citace
Koukni na MouseActions. Konkrétně by mohl pomoct DirectEdit. Tedy pokud jsem to pochopil správně.  :)

Je to vončo  ;)
Kde jste to info našel?

Demo příklady, jejich návod obsahuje také dost věcí, No a hledání :) Pokud v návrhu kliknete pravým tlačítkem na komponentu gridu je v nabídce Manual eventuelně Tips. A to odkazuje přímo na jejich web.

Citace
Když vložite v projektu na form AdvStringGrid, je první bunka vlevo náhoře zbarvena modře.
Da se to někde vypnout, je to tak v sample asg10.
Property ShowSelection.

Citace
PS: Object Inpector - Propertis
Da se toto nastavení najít někde jako text?
Když vemu 2 x AdvStringGrid a chtěl bých třeba v  PS padu porovnat Object Inpector - Propertis

Každá komponenta se dá zobrazit jako text. Pravým tlačítkem myší a položka View as Text.

Marek.V

  • Host
Re:AdvStringGrid
« Odpověď #11 kdy: 04-02-2019, 14:31:03 »
Dik moc za pomoc, už to skoro bude  ;)

Ještě bych měl 2 dotazy.
Jak je to s tiskem?

Koukal jsem na sample, hledal na internetu a zkoušel.
Je tam možnost AdvStringGrid1.Print
Pak dvě komponenty AdvPreviewDialog, AdvGridPrintSettingsDialog.
Mně by ale zajímalo, jak na to, když mam třeba tabulku, která má jen 10 řádku a já bych chtěl vytisknout nějaký text před, nebo za tabulkou na jeden list.

A dotaz mino téma.
Počítač ani balík TMSComponentPack není můj, takže nemam moc času na tento projekt a delphi jsem viděl naposledy tak před 10 lety.
Slíbil jsem tento prográmek zadarmo jednomu malému domovu důchodců, takže tomu zas moc času a učení věnovat nechci.

Potřebují někam ukládat přihlašovací údaje Jméno příjmení a heslo.
Úplně by mi na to stačil ListBox, kdyby měl alespoň 2 sloupce a jeden by šel schovat.
Nedá se na to použít nějaká komponenta z toho balíku.
Prostě v jednom sloupci, by bylo jméno a příjmení, a v druhem zašifrované heslo.
S databází jsem nikdy nedělal.
Děkují.


Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 3833
  • Karma: 35
    • Verze Delphi: XE7 professional
Re:AdvStringGrid
« Odpověď #12 kdy: 04-02-2019, 15:01:55 »

S tlačou neporadím.Kde chceš ti údaje vlastne ukladať. Či
Citace
S databází jsem nikdy nedělal.
je len konštatovanie a chceš nejakú použiť? Mimo DB sa to dá uložiť do ini či JSON. Čo určite vieš.
Ja na také jednoduché veci používam Access. Výhodou je, že to bude bežať všade kde sú Windows. Bez potreby niečo inštalovať či kopírovať. Ale sú aj iné.
Podľad toho do čoho budeš údaje ukladať by som odvíjal ďalší vývoj aplikácie a použité komponenty.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Marek.V

  • Host
Re:AdvStringGrid
« Odpověď #13 kdy: 04-02-2019, 15:41:06 »
Tak oni po mně chtěli jen 2X StringGrid.
Jeden mněl mít jen jeden řádek, kam by se zadávali údaje.
Po kliknutí na button, přidat se data měli přidat do druhého StringGridu.
Ted chtějí místo buttonu edit.
By každý necvakal svůj pin a po zmačknutí enter, by se data uložili a v posledním sloupci by bylo jméno a příjmení, kdo to přidal.
Zašifrovaní řetězec přes WCrypt2 nebo DCPCrypt umím.

List box by na to byl ideální kdyby mněl ty 2 sloupce. ;)

ListBox1.Items.SaveToFile(`);
Listbox1.Items.LoadFromFile(');   



Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 3833
  • Karma: 35
    • Verze Delphi: XE7 professional
Re:AdvStringGrid
« Odpověď #14 kdy: 04-02-2019, 17:08:28 »

Citace
List box by na to byl ideální kdyby mněl ty 2 sloupce.
Síce má voľbu Column, ale nespojazdnil som to.Tak použi TColumnListBox z TMS. Tam som to spojazdnil hneď.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

 

S rychlou odpovědí můžete používat BB kódy a emotikony jako v běžném okně pro odpověď, ale daleko rychleji.

Jméno: E-mail:
Ověření:
Křestní jméno zpěváka Gotta: