Fehler bei "Sender" Variable

XMagic

Grünschnabel
Guten Tag,
ich habe den Borland C++ Builder 6 und wollte nun klein anfangen und einen eigenen Taschenrechner programmieren.
Hier erst mal den Quelltext:

Code:
 //---------------------------------------------------------------------------
 
 #include <vcl.h>
 #pragma hdrstop
 
 #include "Unit1.h"
 //---------------------------------------------------------------------------
 #pragma package(smart_init)
 #pragma resource "*.dfm"
 TForm1 *Form1;
 int z;
 //---------------------------------------------------------------------------
 __fastcall TForm1::TForm1(TComponent* Owner)
 		: TForm(Owner)
 {
 }
 //---------------------------------------------------------------------------
 
 void __fastcall TForm1::Button1Click(TObject *Sender)
 {
 switch(Sender)
 		{
 		case 1: z=0;
 		case 2: z=1;
 		case 3: z=2;
 		case 4: z=3;
 		case 5: z=4;
 		case 6: z=5;
 		case 7: z=6;
 		case 8: z=7;
 		case 9: z=8;
 		case 10: z=9;
 		}
 Edit1->Text=Edit1->Text + z;
 }

Dabei sagt mir der Compiler nun:
[C++ Error] Unit1.cpp(21): E2383 Switch selection expression must be of integral type

Was habe ich falsch gemacht? Bitte auch um dazugehörige Erklärung, warum das so sein muss und nicht anders.
Danke im Voraus.
 
Hallo,
in einem switch statement ist es nur möglich Variablen elementarer Typen
anzusprechen, wie z.b. int, char, etc, somit fällt dein Versuch ein Objekt
abzufragen raus, aber vielleicht besitzt das Objekt sender ja eine Methode,
die dir den elementaren Datentyp den das Objekt repräsentieren sollte zurückgibt?

Gruß

RedWing
 
Also in der Hilfe habe ich leider nichts von einem Rückgabewert gelesen...
Vielleicht muss ich das doch mit 10 Funktionen machen :(
dachte nur, eine Funktion wäre deutlich besser
Falls wer schon von einem Rückgabewert gehört hat, bitte melden!
 
Zurück