Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi dbnavigator ändern (https://www.delphipraxis.net/80775-dbnavigator-aendern.html)

tom_po 15. Nov 2006 00:58


dbnavigator ändern
 
ich möchte im Quellcode die Anzeige meines DBNavigators ändern, habe dies versucht:

Delphi-Quellcode:
procedure TMainForm.InsertPurchasingPlanning1Click(Sender: TObject);
var nbinsert,nbdelete: string;
begin

showdbview('select Client,tipo as "Group",Order as "Order",Article as "Style",Pieces,'
+'planfabric,planacess,finaldate as "Delivery Date",observations as "Remarks"'
+'from orders where planfabric is null or planacess is null ','Insert Purchasing Planning',true,true);

dbview.dbnavigator1.VisibleButtons[nbinsert,nbdelete]:=false;
end;
aber bekomme die Fehlermeldung: Array-Typ erforderlich! Was muss ich tun?

marabu 15. Nov 2006 05:57

Re: dbnavigator ändern
 
Guten Morgen.

So könnte es funktionieren:

Delphi-Quellcode:
procedure TMainForm.InsertPurchasingPlanning1Click(Sender: TObject);
const
  sel
    = 'select Client, tipo as "Group", Order as "Order", '
    + 'Article as "Style", Pieces, planfabric, planacess, '
    + 'finaldate as "Delivery Date", observations as "Remarks" '
    + 'from orders where planfabric is null or planacess is null '
    ;
begin
  ShowDBView(sel, 'Insert Purchasing Planning', True, True);
  with DBView.DBNavigator1 do
    VisibleButtons := VisibleButtons - [nbinsert, nbdelete];
end;
Grüße vom marabu

tom_po 15. Nov 2006 15:14

Re: dbnavigator ändern
 
Hallo Marabu, zunächst mal vielen Dank für Deine Hilfe...
leider geht es noch nicht, zuerst kam die Meldung der nicht definierten nbdelete und nbdelete...
habe dann versucht, sie als boolean zu definieren, bekam aber dann die Meldung siehe Bild (TNavigateBtn und Boolean inkompatible Typen!
Sicher ist es nur eine Kleinigkeit
Schau mal http://www.magoarte.com/boolean.jpghier

marabu 15. Nov 2006 15:55

Re: dbnavigator ändern
 
Der Aufzählungstyp TNavigateBtn ist bei mir zusammen mit der Komponente TDBNavigator in der gleichen Unit deklariert: DBCtrls. Du darfst nbInsert und nbDelete nicht einfach selbst deklarieren. Hast du schon einmal erwogen deine Delphi Version in dein DP-Profil einzutragen?

Freundliche Grüße

raiguen 15. Nov 2006 15:57

Re: dbnavigator ändern
 
Zitat:

Zitat von tom_po
Delphi-Quellcode:
procedure TMainForm.InsertPurchasingPlanning1Click(Sender: TObject);
var nbinsert,nbdelete: string;
...

bzw das hier
Zitat:

Zitat von tom_po
Delphi-Quellcode:
procedure TMainForm.InsertPurchasingPlanning1Click(Sender: TObject);
var nbinsert,nbdelete: boolean;
...

ist schlicht und ergreifend FALSCH!!
Warum? nbDelete, nbInsert etc sind vom Typ TNavigateBtn und somit schon mal 'reservierte' Bezeichnungen der NavigationButtons.
Nimm die VariablenDeklarierung raus und schon funktioniert der Code von marabu :)

tom_po 16. Nov 2006 13:56

Re: dbnavigator ändern
 
maribu, ich habe meine Version (7-Enterprise) in meinem DP-profil aktualisiert.

Es geht halt einfach nicht....
Sicher hat es nicht damit zu tun, dass ich meiner Form dies deklariert habe, oder?

Delphi-Quellcode:
procedure TDBViewForm.FormResize(Sender: TObject);
begin
DBNavigator1.Width:=self.Width-120;
end;
Hier nochmals die Fehlermeldung, die es gibt:

http://www.magoarte.com/boolean.jpg

raiguen 16. Nov 2006 14:32

Re: dbnavigator ändern
 
Moin :)
Erstens: Die Anweisung im OnResize() ist nicht die Fehlerursache.
Zweitens: Aus der Fehlermeldung geht eindeutig hervor, dass in deinem Code irgendwo noch nbinsert, nbdelete als Integer-Variable deklariert. Wie ich bereits in meinem Posting #5 geschrieben habe, darf das nicht sein! Und marabu hat dir das in #4 auch schon gesagt...
Also forsche deinen Code dahingehend mal durch, ob nicht doch irgendwo diese falschen Deklarierungen drin sind :!:
//EDIT Tippselfehler beseitigt... Wieso sieht man die immer erst dann, wenn der Beitrag abgeschickt wurde :gruebel:

marabu 16. Nov 2006 16:30

Re: dbnavigator ändern
 
Hallo Tom,

halte doch einfach mal die STRG-Taste gedrückt und klicke auf nbInsert in der vom Compiler angemeckerten Zeile 1122. Du solltest dann eigentlich zu der fehlerhaften Deklaration von nbInsert geführt werden.

Freundliche Grüße

tom_po 18. Nov 2006 00:54

Re: dbnavigator ändern
 
Ich versteh nicht, wo der Fehler liegt, habe mit Strg-Taste so kontrolliert, wie marabu es sagte, es passiert aber nichts, der Cursor bleibt auf nbinsert, bzw. nbdelete...

auch habe ich nach diesen Begriffen gesucht, ob es irgendwo sonst noch deklariert ist, aber auch nichts gefunden...nur in der Zeile, wo der Fehler liegt!

http://www.magoarte.com/boolean.jpg

Kann es an meiner Komponente DBNavigator liegen??

marabu 18. Nov 2006 15:00

Re: dbnavigator ändern
 
Möglich, aber unwahrscheinlich.

Ich vermute eher, dass du die Unit DBCtrls immer noch nicht in die Uses-Anweisung deiner MainForm aufgenommen hast.

Freundliche Grüße


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:31 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz