![]() |
drbgrid mit edit füllen
Hallo ich habe mich soeben an einer kleinen datenbank versucht.
es hat soweit geklappt, aber wie bekomme ich es hin, dass der text derEdit fenster ausserhalb des dbgrid in das grid eingefügt werden. sprich ich habe einige edit fenster die auszufüllen sind sind diese ausgefüllt wird es mit einem klick auf einen button in die gridliste eingefügt. bei stringgrid kenne ich den befehl: stringgrid1.cells.caption:=e_blabla.text; aber wie schauts bei dem datenbankgrid aus? Viele Grüße Sascha |
AW: drbgrid mit edit füllen
Da musst Du einen neuen Datensatz anlegen. Ein DBGrid zeigt ja lediglich die Daten einer Datenmenge an, also musst Du auch diese bearbeiten.
|
AW: drbgrid mit edit füllen
verdammt ich wusste das es komplizierter ist, habe ein video gefunden im internet bei dem das erstellen der datenbank erklärt wurde nun gibts aber keine info wie man es erweitert.
kannst du es mir vlt erklären? |
AW: drbgrid mit edit füllen
Was ist es denn für eine Datenbank, und womit greifst Du darauf zu, TQuery, TTable oder etwas anderes?
|
AW: drbgrid mit edit füllen
habs mit datasource zu dbf1 und als TDBGrid.... dazu 6 Intems mit String
|
AW: drbgrid mit edit füllen
Und was ist dbf1? Das muss ja ein TDataset sein, aber von welchem Typ? Mal auf Verdacht:
Delphi-Quellcode:
dbf1.Append;
dbf1['Feldname'] := Edit1.Text; dbf1['AndererFeldname'] := Edit2.Text; dbf1.Post; |
AW: drbgrid mit edit füllen
und das gebe ich bei dem Button ein?
ja also man findet es unter: DATA ACCESS - DBF bzw. vorher DATA ACCESS - DATASOURCE |
AW: drbgrid mit edit füllen
Gratulation, dein Vorschlag hat funktioniert.
Ich kann mit den Editfeldern die Liste füllen. Kleine nebenfrage: wie bekomme ich es nun hin, dass der nächste Eintrag oben steht und der bereits eingetragene in der Liste nach unten springt |
AW: drbgrid mit edit füllen
Dazu muss die Datenmenge entsprechend sortiert sein. In meinem Delphi gibt es kein DBF, daher kann ich nicht sagen, was da genau einzustellen ist, müsste wohl irgendwas mit "Index" im Namen sein. Günstig wäre es, wenn Deine Tabelle einen fortlaufende Index hat (Primärschlüssel), dann könntest Du nach diesem absteigend sortieren.
|
AW: drbgrid mit edit füllen
okay also er macht es anscheinend slebständig,
ich habe 5 editfenster und 5 spalten im grid, aber er will nur 4 im grid übernehmen beim 5. zeigt er eine fehlermeldung an obwohl alles wie bei den voherigen ist. |
AW: drbgrid mit edit füllen
Und welche Fehlermeldung? Man sollte die nie unterschlagen ;)
|
AW: drbgrid mit edit füllen
Hallo kurze frage, kann man ein befehl geben das ein normales Stringgrid gedruckt wird?
|
AW: drbgrid mit edit füllen
Schau dir mal die
![]() Zitat:
|
AW: drbgrid mit edit füllen
Und das Forum eine Suchfunktion:
![]() |
AW: drbgrid mit edit füllen
okay ich bekomm die befehltzeilen erklärt bzw. vorgegeben aber welches symbol bzw. aktivität verweist auf den drucker?
|
AW: drbgrid mit edit füllen
Die Frage habe ich nicht verstanden.
|
AW: drbgrid mit edit füllen
man bekommt im forum nur die befehlszeile gezeigt:
uses printers; procedure GridDruck(grd:TStringGrid;links,oben:word;scal:dou ble); var x,y,li,ob,re,un,waag,senk,h,a: integer; s: string; function rech(i,j:integer):integer; begin result:=round(((i*j) / 72) * scal); end; begin if scal > 0 then begin waag:=getdevicecaps(printer.handle,logpixelsx); senk:=getdevicecaps(printer.handle,logpixelsy); links:=rech(links,waag); oben:=rech(oben, senk); a:=rech(3,waag); li:=getdevicecaps(printer.handle,physicaloffsetx)+ 1+links; with printer do begin s:='Grid-Druck'; title:=s; BeginDoc; canvas.font:=grd.font; canvas.font.size:=round((grd.font.size / 0.72) * scal); h:=canvas.textheight(s); canvas.pen.color:=$333333; for x:=0 to grd.colcount-1 do begin if grd.gridlinewidth > 0 then begin canvas.pen.style:=pssolid; canvas.pen.width:=1; end else canvas.pen.style:=psclear; ob:=getdevicecaps(printer.handle,physicaloffsety)+ 1+oben; re:=li+rech(grd.ColWidths[x]+1,waag); for y:=0 to grd.rowcount-1 do begin un:=ob+rech(grd.RowHeights[y]+1,senk); if (x < grd.fixedcols) or (y < grd.fixedrows) then canvas.brush.color:=grd.fixedcolor else canvas.brush.color:=grd.color; canvas.rectangle(li,ob,re,un); canvas.brush.style:=bsclear; canvas.textrect(rect(li+a,ob+1,re-a,un-1), li+a,ob+(un-ob-h)div 2,grd.Cells[x,y]); ob:=un; end; canvas.brush.color:=clwhite; canvas.pen.style:=psclear; canvas.rectangle(li,ob+1,re,ob+h); li:=re; end; enddoc; end; end; end; aber wo muss das ganze rein, bzw. welches element muss ich einfügen , dass er überhaupt weiss drucken, welcher drucker usw. |
AW: drbgrid mit edit füllen
Es gibt einen
![]() ![]() |
AW: drbgrid mit edit füllen
okay, ich ziehe mir die dialoge in form1.
aber wenn ich auf einen der dialoge klicke zeigt er mir zwar die einstellungen aber wo muss ich nun die bfehle eingeben, find es halt blöd als einsteiger das es immer nur riesen befehlszeilen gibt aber nicht von beginn an erklärungen. |
AW: drbgrid mit edit füllen
Ein gewisses Grundlagenwissen muss man eben voraussetzen, man kann ja nicht bei jedem Codeschnippsel beim Urschleim anfangen, sonst hätte jedes Listing im Forum 5000 Zeilen und mehr. Empfehlen kann ich z.B. die
![]() ![]() ![]() ![]() |
AW: drbgrid mit edit füllen
GridDruck() ist eine Prozedur, die du z.B. in onClick eines Buttons aufrufen kannst.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:57 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz