Autor Téma: StringGrid - uložení hesla do buněk  (Přečteno 1880 krát)

Marek.V

  • Host
StringGrid - uložení hesla do buněk
« kdy: 14-02-2019, 22:18:27 »
Dobrý den.
Bych chtěl do jednoho sloupcu ukladat hesla.
Aby ale byli tak jak to jde v editu
edit1.PasswordChar := '*';

Našel jsem si řešení.
Ale ono to překresli až zadam cele heslo.
Pomužete?

 
Kód: Delphi [Vybrat]
  1. procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
  2.   Rect: TRect; State: TGridDrawState);
  3. var
  4.   drawText: String;
  5. begin
  6.   drawText := StringGrid1.Cells[ACol, ARow];
  7.   if ACol = 2 then begin
  8.     drawText := StringOfChar('*', Length(WideString(drawText)));
  9.   end;
  10.   StringGrid1.canvas.TextRect(Rect, Rect.Left +1, Rect.Top + 1,drawText);
  11. end;

Marek.V

  • Host
Re:StringGrid - uložení hesla do buněk
« Odpověď #1 kdy: 15-02-2019, 07:24:59 »
Tak toto mi nějak nefunguje.

Pokud jsem to pochopil tak ,DrawCell to zadane heslo překresluje, ale pod ním by mělo být furt to zadane,ne?
GetEditMask jej změní, takže už to zadane heslo nezjistím.

Marek.V

  • Host
Re:StringGrid - uložení hesla do buněk
« Odpověď #2 kdy: 15-02-2019, 09:31:19 »
No prostě potřebují, aby se to chovalo jako komponenta edit s nastaveným PasswordChar := '*';
Když píše heslo, všichni čumilové vidí jen tečky, ale kdykoliv se da to heslo zjistit.
Label1.Caption := edit1.Text;

Úplně by mi stačilo, kdyby to uměla jen jedna buňka v celem gridu.
Někde jsem viděl sample, jak se do buňky gridu vkreslila jiná komponenta.
Tedy u mně ten edit.
Ale to je mimo mé znalostí.

Marek.V

  • Host
Re:StringGrid - uložení hesla do buněk
« Odpověď #3 kdy: 15-02-2019, 10:20:28 »
Citace
Co je zminovane to? Inplace editor (komponenta, jenz uvnitr gridu obstarava editaci)

Možna jsem to našel
https://stackoverflow.com/questions/5306037/put-a-tcheckbox-inside-a-tstringgrid-in-delphi
Prostě v nějake bunce je vykreslený button nebo CheckBox
Pokud jsem to pochopil, tak button se vloží na form a procedura DrawCell ho překresli do bunky gridu.
Kdybych to same udělal s tou kompnentou edit, bylo by to vyřešene.

Marek.V

  • Host
Re:StringGrid - uložení hesla do buněk
« Odpověď #4 kdy: 15-02-2019, 11:53:40 »
Citace
OnDrawCell, kde budes namisto textu bunky kreslit hvezdicky, tak jak to mas v prvnim prispevku.

Ano, o to mi jde.
Ale v tom prvním prispevku, když zadavam to heslo tak jde vidět.
Až když opustím tu bunku a kliknu někam jinam ji to překresli.
V tom text editu jdou vidět tečky už když heslo zadavam.

Marek.V

  • Host
Re:StringGrid - uložení hesla do buněk
« Odpověď #5 kdy: 15-02-2019, 12:41:20 »
Se to tu cele zaplantava.
Vykašlem se na celý edit.
Otazka zní, jak vložít do buněk nějakeho sloupce StringGridu hesla, tak aby jen nikdo neviděl i při vkladaní a mohly by se programově kdykoliv našist?

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4341
  • Karma: 38
    • Verze Delphi: XE7 professional
Re:StringGrid - uložení hesla do buněk
« Odpověď #6 kdy: 15-02-2019, 13:07:40 »
Excellent
Rated 1 time
Citace
Otazka zní, jak vložít do buněk nějakeho sloupce StringGridu hesla, tak aby jen nikdo neviděl i při vkladaní a mohly by se programově kdykoliv našist?
Prosím Ťa, prečítaj si celú diskusiu aspoň 5x.
V prvom rade sa snaž pochopiť čo si napísal. NIE čo si chcel napísať. To je rozdiel. Je to horšie než by som to písal ja. A to už je čo povedať ;D .
Potom sa snaž pochopiť odpovede. Máš tam odpoveď na to, čo sa pýtaš.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4341
  • Karma: 38
    • Verze Delphi: XE7 professional
Re:StringGrid - uložení hesla do buněk
« Odpověď #7 kdy: 15-02-2019, 13:11:19 »
Ešte dodatok. Tvoje vyjadrovanie je mizerné. Snaž sa druhýkrát písať po česky. Nemôžem napísať spisovne, lebo nemáte kodifikovanú češtinu. Tu nie sme na nejakej sociálnej stránke. Tu sa musíš vyjadrovať presne a jasne. Až matematicky. Pomôže aj priloženie obrázku.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4341
  • Karma: 38
    • Verze Delphi: XE7 professional
Re:StringGrid - uložení hesla do buněk
« Odpověď #8 kdy: 15-02-2019, 14:17:13 »
Dojem nie je pojem. Ja som to pomotal. Vy nemáte češtinu uzákonenú ako úradný jazyk. A to je iné než kodifikácia.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Vratik

  • Host
Re:StringGrid - uložení hesla do buněk
« Odpověď #9 kdy: 02-03-2019, 09:28:00 »
Dobrý den.
Jak vycentrovat písmo v buňce?
taCenter znám.
Ale když mám čísla
12,2
12,44
123,12

Tak aby byli uprostřed, ale tak jak je vidíte.





Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4341
  • Karma: 38
    • Verze Delphi: XE7 professional
Re:StringGrid - uložení hesla do buněk
« Odpověď #10 kdy: 02-03-2019, 10:51:58 »
Nerozumiem o čo Ti ide. Takých nás asi bude viac. Veď si napísal, že taCenter poznáš. Číslo je v bunke len text. Keď takto vycentruješ iný text, tak sa musia vycentorvať aj čísla.
PS: StringGrid nepoznám, tak sa snáď nemýlim.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Vratik

  • Host
Re:StringGrid - uložení hesla do buněk
« Odpověď #11 kdy: 02-03-2019, 21:50:23 »
Poor
Rated 1 time
když použiju taCenter, bude každý řádek vycentrovaný zvlášť.
Když v prvním řádku bude 10 čísel, druhem 9, třetím 8, atd
Na desátém bude jen jedno.
Tak to bude vypadat jak trychtýř a ne tak jak jsem to uvedl.

A další problém.
Options - goEditing a mužů do gridu psát.
poklepám na buňku a vidím blikat kurzor.
Když však zvětším font na 16 (mam Times New Roman), už ten blikající kurzor nejde vidět.
Proč?
Půjde to nějak pořešit?

Vratik

  • Host
Re:StringGrid - uložení hesla do buněk
« Odpověď #12 kdy: 02-03-2019, 22:01:02 »
takže nepotřebují asi taCenter, ale na každém řádku tabulátor.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4341
  • Karma: 38
    • Verze Delphi: XE7 professional
Re:StringGrid - uložení hesla do buněk
« Odpověď #13 kdy: 02-03-2019, 22:36:18 »
Už Ti rozumiem.
Nemá StringGrid niečo ako Margin/okraj? Tak by si to mohol zarovnať vľavo a ten okraj by sa postaral o to, aby to nebolo nalepené na ľavý okraj.
Len si uvedom, že pri každej zmene šírky stĺpca ho budeš musieť prepočítať.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4341
  • Karma: 38
    • Verze Delphi: XE7 professional
Re:StringGrid - uložení hesla do buněk
« Odpověď #14 kdy: 02-03-2019, 22:40:44 »
Hm, v takýchto prípadoch sa používa skôr zarovnanie na desatinnú čiarku. Aby to bolo dobre čitateľné a užívateľ už pri prvom pohľade vedel s ako veľkým číslom má do činenia.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.