| Autor | Beitrag | 
| Roy 
          Beiträge: 184
 
 Windows7 Ultimate
 Delphi 2007, NET, Embarcadero
 
 | 
Verfasst: Mo 18.01.16 15:21 
 
Hallo Freunde,
 mal wieder eine Frage von mir:
 Ich arbeite in meinem Tool mit Access und somit auch DBEdit Komponenten. Ich möchte nun wenn DBEdit1= Edit  ist ein Panel anzeigen lassen
 Zbs. Hallo Freunde,
 		                       Delphi-Quelltext 
 									| 1:2:
 3:
 4:
 5:
 
 | procedure TForm1.Button1Click(Sender: TObject);begin
 if Edit1.text = DBEdit1.Text then
 Panel1.Visible:= true;
 end;
 |  Funktioniert aber nicht
 Kann mir jemand helfen?
Moderiert von  Martok: Delphi-Tags hinzugefügt | 
|  | 
| baumina 
          Beiträge: 305
 Erhaltene Danke: 61
 
 Win 7
 Delphi 10.2 Tokyo Enterprise
 
 | 
Verfasst: Mo 18.01.16 15:39 
 
Greife nicht auf die DBEdit zu, sondern auf die Daten der Tabelle. 
 		                       Delphi-Quelltext 
 									| 1:
 | if DBTable.FieldByName('EinFeld').AsString = Edit1.Text					 |  | 
|  | 
| tomte 
          Beiträge: 19
 Erhaltene Danke: 5
 
 Win 7, Win 8.1, Win 10, Win Server 2012
 
 
 | 
Verfasst: Mo 18.01.16 15:51 
 
Versuch es mal mit:
 if (CompareStr((Edit1.text),  (DBEdit1.Text)) < 0) then
 Panel1.Visible:= true;
 | 
|  | 
| Roy  
          Beiträge: 184
 
 Windows7 Ultimate
 Delphi 2007, NET, Embarcadero
 
 | 
Verfasst: Mo 18.01.16 17:33 
 
	  |  tomte hat folgendes geschrieben  : |  	  | Versuch es mal mit: 
 if (CompareStr((Edit1.text),  (DBEdit1.Text)) < 0) then
 Panel1.Visible:= true;
 | 
 Hier gibt er mir auch ohne das die Inhalte Übereinstimmen das Panel1.visible:= true aus
 Er soll die beiden Felder vergleichen, und wenn der Inhalt Übereinstimmt soll Panel1 visible
 Wofür soll das <0 stehen | 
|  | 
| tomte 
          Beiträge: 19
 Erhaltene Danke: 5
 
 Win 7, Win 8.1, Win 10, Win Server 2012
 
 
 | 
Verfasst: Di 19.01.16 08:25 
 
	  |  Roy hat folgendes geschrieben  : |  	  | 	  |  tomte hat folgendes geschrieben  : |  	  | Versuch es mal mit: 
 if (CompareStr((Edit1.text),  (DBEdit1.Text)) < 0) then
 Panel1.Visible:= true;
 | 
 
 Hier gibt er mir auch ohne das die Inhalte Übereinstimmen das Panel1.visible:= true aus
 Er soll die beiden Felder vergleichen, und wenn der Inhalt Übereinstimmt soll Panel1 visible
 Wofür soll das <0 stehen
 | 
 Oh, da hat sich ein Fehler eingeschlichen, statt   < 0  muss es  = 0   heissen.
 CompareStr liefert bei Gleichheit zweier Strings 0 zurück.
 Ausserdem habe ich festgestellt, dass diese Funktion mittlerweile veraltet ist und man lieber ansicomparestr verwenden sollte.
 Also :
 if (ansicomparestr((Edit1.text),  (DBEdit1.Text)) = 0) then 
 Panel1.Visible:= true;
 oder etwas kürzer:
 Panel1.Visible := ansicomparestr(Edit1.text, DBEdit1.Text) = 0; | 
|  | 
| Roy  
          Beiträge: 184
 
 Windows7 Ultimate
 Delphi 2007, NET, Embarcadero
 
 | 
Verfasst: Di 19.01.16 10:47 
 
Muss Eigentlich ein Fremder PC Access installiert haben um mit der Datenbank zu arbeiten? | 
|  | 
| doublecross 
          Beiträge: 149
 Erhaltene Danke: 27
 
 Windows 7
 C#; Visual Studio 2015
 
 | 
Verfasst: Mi 20.01.16 09:33 
 
Hi,
 	  |  Roy hat folgendes geschrieben  : |  	  | Muss Eigentlich ein Fremder PC Access installiert haben um mit der Datenbank zu arbeiten? | 
 höchstwahrscheinlich nicht   . 
 Die Frage ist natürlich immer, wie du auf die Datenbank zugreifst. Ich nehme an, dass du er über die JET-Engine per ADO machst. Dafür wird lediglich MDAC  benötigt. Welches nur bei ganz alten Windows Versionen nicht Bestandteil des Systems sind. | 
|  | 
| Roy  
          Beiträge: 184
 
 Windows7 Ultimate
 Delphi 2007, NET, Embarcadero
 
 | 
Verfasst: Mi 20.01.16 10:15 
 
Hallo Ihr lieben kleinen Helfer,
kann man auch noch eine oder Funktion himzufügen?
 | 
|  | 
| Roy  
          Beiträge: 184
 
 Windows7 Ultimate
 Delphi 2007, NET, Embarcadero
 
 | 
Verfasst: Mi 20.01.16 10:16 
 | 
|  | 
| Roy  
          Beiträge: 184
 
 Windows7 Ultimate
 Delphi 2007, NET, Embarcadero
 
 | 
Verfasst: Di 09.02.16 20:29 
 
Mir ist jetzt die Sache gelungen habe aber dazu noch eine Frage.
Wie kann ich noch eine Fehlermeldung rausgeben wenn rot markiertes nicht erfüllt ist?
 
 procedure TForm1.Button1Enter(Sender: TObject);
 begin
 Panel1.Visible := ansicomparestr(Zertifizierungnummer.text, DBEdit2.Text) = 0;
 Panel3.Visible:= false;
 end
 | 
|  | 
| tomte 
          Beiträge: 19
 Erhaltene Danke: 5
 
 Win 7, Win 8.1, Win 10, Win Server 2012
 
 
 | 
Verfasst: Mi 10.02.16 10:18 
 | 
|  | 
| Roy  
          Beiträge: 184
 
 Windows7 Ultimate
 Delphi 2007, NET, Embarcadero
 
 | 
Verfasst: Mi 10.02.16 15:33 
 
Funktioniert wunderbar.
Vielen Dank
 | 
|  |