Autor Beitrag
Spike Lobo
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Do 25.10.07 21:18 
Mahlzeit!

Ich habe ein kleines Problem. Immer, wenn ich mein kleines Programm starten will, sagt Delphi mir "Inkompatible Typen: String und TLabel". Was ich machen will, ist folgendes: Wenn in ein Feld ein bestimmter Wert eingegeben wird, soll einer Variable a (String) eine Zeichenfolge ('abcxyz', String) zugeordnet werden. Jetzt sagt er mir aber diese obengenannte Fehlermeldung. Ich weiß, wie ich Strings in Integer umwandeln kann und so weiter, aber was mache ich mit TLabel?
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Do 25.10.07 21:21 
Hallo und :welcome:!

Normalerweise: Ohne Quellcode kann man da nix zu sagen.

In dem Fall: Der Text, den das Label anzeigt, steckt in der Caption-Eigenschaft, Du musst den String also dieser Eigenschaft zuweisen

Grüße
Christian

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
mkinzler
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 4106
Erhaltene Danke: 13


Delphi 2010 Pro; Delphi.Prism 2011 pro
BeitragVerfasst: Do 25.10.07 21:34 
ausblenden Delphi-Quelltext
1:
s := Label.Caption;					

ausblenden Delphi-Quelltext
1:
Label.Caption := s;					

_________________
Markus Kinzler.


Zuletzt bearbeitet von mkinzler am Do 25.10.07 21:40, insgesamt 1-mal bearbeitet
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Do 25.10.07 21:35 
@mkinzler: Ein Label hat keine Text-Eigenschaft :zwinker:

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
mkinzler
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 4106
Erhaltene Danke: 13


Delphi 2010 Pro; Delphi.Prism 2011 pro
BeitragVerfasst: Do 25.10.07 21:40 
Sorry meinte Caption

_________________
Markus Kinzler.
Tilman
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1405
Erhaltene Danke: 51

Win 7, Android
Turbo Delphi, Eclipse
BeitragVerfasst: Do 25.10.07 22:41 
user profile iconChristian S. hat folgendes geschrieben:
@mkinzler: Ein Label hat keine Text-Eigenschaft :zwinker:

Doch, hat es ^^ allerdings freilich als protected deklariert. (--> TControl)

_________________
Bringe einen Menschen zum grübeln, dann kannst du heimlich seinen Reis essen.
(Koreanisches Sprichwort)
Spike Lobo Threadstarter
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Fr 26.10.07 09:26 
Da bin ich wieder. Also, ich erklär mal, was ich vorhabe:

Ich habe a und den Inhalt von Feld1 (b) als String-Variablen deklariert. Nun will ich, dass bei einer bestimmten Eingabe in Feld1 a eine bestimmte Zeichenfolge zugewiesen bekommt. Sprich:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
b := Feld1.Text;


if b = 'MOIN'
then a := 'xyz123'

Beim Versuch es zu compilieren, streicht er mir immer die then-Zeile rot an und meint, dass TLabel und String inkompatible Typen sind. Ich habe auch schon einmal versucht, einem neuen Edit-Feld diese Zeichenfolge zuzuweisen. Sprich:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
b := Feld1.Text;


if b = 'MOIN'
then Edit2.Text := 'xyz123'

Hat aber genausowenig funktioniert. Die gleiche Fehlermeldung.

Moderiert von user profile iconGausi: Delphi-Tags hinzugefügt
Gausi
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 8548
Erhaltene Danke: 477

Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
BeitragVerfasst: Fr 26.10.07 09:32 
Was sind denn a und b für Typen? Sind das Strings oder TEdits oder TLabel? Wenn es TLabel oder Edits sind, dann sollte es so funktionieren:
ausblenden Delphi-Quelltext
1:
2:
if b.Caption = 'MOIN' then //...falls b Label ist
if b.Text = 'MOIN' then // falls b Edit ist

_________________
We are, we were and will not be.
Spike Lobo Threadstarter
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Fr 26.10.07 09:40 
Es sind String-Variablen. Hatte ich auch ganz am Anfang geschrieben.
Alpha_Wolf
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 297

Ubuntu, Win XP, Win Vista
C#, Delphi 6 Prof, Delphi 2007 Prof, Java
BeitragVerfasst: Fr 26.10.07 09:45 
Hab das mal anhand deines Codes nachgebaut..:
ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Feld1: TEdit;
    Button1: TButton;
    Edit2: TEdit;
    procedure Button1Click(Sender: TObject);
  private
  public
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
  b: string;
  a: string;
begin
  b := Feld1.Text;
  if b = 'MOIN' then
    Edit2.Text := 'xyz123';
end;

end.

Denn der Code funktioniert bei mir einwandfrei.

_________________
Diskutiere nie mit einem Irren - er zieht dich auf sein Niveau und schlägt dich mit seiner Erfahrung.
Spike Lobo Threadstarter
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Fr 26.10.07 09:46 
Kommando zurück! Ich weiß meinen Fehler. Ich hatte vergessen, der Variablen auch wirklich den Inhalt des Feldes zuzuweisen. Jetzt klappt es. Trotzdem danke für die Hilfe!