DBGrid - kilka wierszy w 1 komórce

Odpowiedz Nowy wątek
2006-11-09 17:01
df
0

Witam
Tak jak w temacie. Chciałbym się dowiedzieć jak w DBGridzie w 1 komórce zapisać kilka linijek tekstu. Chciałbym zorbić coś takiego jak bym w środku komórki nacisnął enter i dalszy tekst będzie już w nowej linijce ale ciągle w tej samej komórce. Korzystam z komponentów ZEOS, a wyniki wyświetlam w DBGrid. Może trzeba jakoś zmienić zapytanie SQL żeby osiągnąć taki rezultat?

Pozostało 580 znaków

2006-11-10 09:10
df
0

Nikt nie wie jak można coś takiego zrobić? A może po prostu nie korzystać z DBGrid? Tylko w takim przypadku z czego?

Pozostało 580 znaków

2006-11-10 13:27
0

eee....
A nie lepiej położyć gdzieś obok DBMemo, czy tam DBRichEdit i w tym wpisywać taki duży tekst?

Pozostało 580 znaków

2007-04-06 16:10
df
0

Powracam jeszcze raz do tematu. Opiszę to inaczej. Może ktoś coś pomoże. Po prostu chodzi o to, żeby w jednym wierszu (w dbgridzie) zawierającym dane: imię, nazwisko, adres, wiek, adres był wpisany w 2 wierszach. Ulica wyżej, a kod pocztowy i miasto niżej. W pozostałych komórkach tego wiersza tekst byłby wyśrodkowany w pionie

Pozostało 580 znaków

2007-04-06 20:44
snw
0

OwnerDraw !


Pozostało 580 znaków

2007-04-07 13:26
df
0

mógłbyś napisać coś więcej?

Pozostało 580 znaków

2007-04-07 13:44
0

OwnerDraw
poza tym wątpię, czy uda Ci się coś takiego ze zwykłym DBGridem


- Ciemna druga strona jest.
- Nie marudź Yoda, tylko jedz tego tosta.
Google NIE GRYZIE!
Pomogłem - kliknij

Pozostało 580 znaków

2007-04-07 14:21
0

Ja zrobiłem coś takiego ( nie wiem czy działa na DBGrid, ja robilem na AdvStringGrid ):

W KeyDown w DBGird

if key = VK_RETURN then
begin
AdvStringGrid1.RowHeights[yy+1] := AdvStringGrid1.RowHeights[yy+1] + 13;
 AdvStringGrid1.Cells[xx+1,yy+1] := AdvStringGrid1.Cells[xx+1,yy+1] + #13#10;
end;

W SelectCell:

xx := ACol;
yy := ARow;

i oczywiście zdeklaruj 2 zmienne (xx,yy) typu integer...

  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  xx,yy : integer;  // <-------------------------------

implementation

{$R *.dfm}

PS. Nie wiem czy ten sposób działa na DbGrid..!

Pozostało 580 znaków

2007-04-07 17:27
snw
0

ownerdraw powinien działać, o ile dopasuje sobie wysokość komórki.


Pozostało 580 znaków

2007-04-07 19:27
0
snw napisał(a)

o ile dopasuje sobie wysokość komórki.

a to może być problem


- Ciemna druga strona jest.
- Nie marudź Yoda, tylko jedz tego tosta.
Google NIE GRYZIE!
Pomogłem - kliknij

Pozostało 580 znaków

2007-04-07 22:16
snw
0

czemu, znając czcionkę można sprawdzić jej wysokość + odstęp między wierszami choćby w paincie, potem:
row_height:=line_count*const_text_height+(line_count+1)*const_text_interspace
ewentualnie canvas.textheight ale funkcja zwraca chyba tylko wysokość tekstu.


Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0