wert an scrollbar übergeben
-
hallo
ich möchte in ein editfeld eine zahl eingeben. diese zahl soll die scrollbar veranlassen an diese stelle zu springen und ihre funktion auszuüben.
andernfalls soll aber auch, wenn ich die scrollbar bewege die positionsnummer im editfeld stehen.
in meinem quellte. klappt das irgendwie net. er gibt mir nur quark aus.
könnt ihr mir helfen?void __fastcall TForm1::ScrollBar1Change(TObject *Sender) { Edit1->Text= ScrollBar1->Position; Shape1->Brush->Color= TColor(ScrollBar1->Position + 100); Shape2->Brush->Color= TColor(ScrollBar1->Position + 100 <<8); Shape3->Brush->Color= TColor(ScrollBar1->Position + 100 <<16); Shape4->Brush->Color= Shape1->Brush->Color + Shape2->Brush->Color +Shape3->Brush->Color; } //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { int a; Edit1->Text= IntToStr(a); ScrollBar1->Position = a; } //---------------------------------------------------------------------------
-
Hallo,
du könntest auch bei Tastendruck in deinen Eingabefeld die Position
der ScrollBar beeinflussen.void __fastcall TForm1::Edit1KeyPress(TObject *Sender, char &Key) { //Nur Zahlen bei der Eingabe zulassen if((Key < '0' || Key > '9') && Key != VK_DELETE && Key!= VK_BACK) Key = 0; if (Trim(Edit1->Text) != "") { //hier könnte auch eine min/max Wert Überprüfung stehen ScrollBar1->Position = Edit1->Text.ToInt(); } }
-
int a; Edit1->Text= IntToStr(a); ScrollBar1->Position = a;
was steht denn in a drin? Quark, da nicht initialisiert. Also kommt da korrekterweise auch Quark raus.
du meinst wohl:
int a; a = StrToInt(Edit1->Text); ScrollBar1->Position = a;
-
wäre
IntToStrDef(Edit1->Text,0);
nicht besser?
-
Ja