![]() |
Tuning Knopf D7
Hallo zusammen,
ich suche eine Komponente oder Möglichkeit, mit einem runden Knopf bei Rechtsdrehung eine Variable zu inkrementieren und bei Linksdrehung zu dekrementieren. Das Ganze soll endlos, also ohne Start oder Endposition gehen. Ich möchte bei Klick also eine Variable z.B. 50 übergeben und von da aus immer eins dazu oder wegrechnen können. Weiß jemand so ne Kompo oder ne lösung? Bin für jeden Tip dankbar... Gruß Beanbear |
AW: Tuning Knopf D7
|
AW: Tuning Knopf D7
Hi du schöner :-)
alle getesteten knöpfe haben ein Min und ein Max, für mich nicht brauchbar, weil: wenn ich bei max weiterdrehe, krieg ich wieder den Wert 0, es beginnt also wieder von Anfang an. Ich muss endlos bei rechtsdrehung +1 und bei links einfach -1 erhalten... Hast da evtl. ne Lösung? Gruß der schöne Beanbear :-) |
AW: Tuning Knopf D7
Wie stellst du dir das vor? Selbst ein Int64 hat ein Min und ein Max. Oder anders ausgedrückt: Alles was mit Zahlen zu tun hat, hat Grenzen, sowohl Unter- als auch Obergrenze. Klar, man kann Überläufe mitbekommen und entsprechend behandeln, aber auch diese Behandlung hat Grenzen. Es gibt kein Unendlich, das im PC darstellbar wäre.
MfG Dalai |
AW: Tuning Knopf D7
Hi Dalai,
ja das ist mir schon klar... Erklärung: Ich hab so ein DMX-board gemacht und möchte Werte von 0 bis 255 mit Hilfe eines runden Knopfes realisieren, weil das besser als mit TrackBar oder so ist. Damit das Ganze besser einzustellen ist, möchte ich, dass bei einmaligen rumdrehen der Wert jeweils um z.B. von 0 bis 20 in einser Schritten erhöht wird. Das heißt aber, dass ich bei weiterem rumdrehen ja wieder von 0 beginne. Mit der richtigen Lösung muss ich dann z.B. ca. 12 mal rumdrehen, um die Werte von 0 bis 255 zu erhalten.. Is bissl schwer zu erklären.. Kann mans verstehen? Gruß Reiner |
AW: Tuning Knopf D7
Die
![]() ![]() Zitat:
|
AW: Tuning Knopf D7
Liste der Anhänge anzeigen (Anzahl: 2)
Ob das nun rund oder linear ist - man kann sowas auch selbst bauen:
Bedienung: hin- und herbewegen des Cursors mit der Maus oder dem Finger im grünen Bereich erhöht den Wert, im roten Bereich wird er verkleinert.
Delphi-Quellcode:
unit Unit2;
interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ExtCtrls, Vcl.Buttons; type TForm2 = class(TForm) Panel1: TPanel; Panel2: TPanel; Label1: TLabel; BitBtn1: TBitBtn; BitBtn2: TBitBtn; Button1: TButton; BitBtn3: TBitBtn; BitBtn4: TBitBtn; BitBtn5: TBitBtn; BitBtn6: TBitBtn; BitBtn7: TBitBtn; BitBtn8: TBitBtn; BitBtn9: TBitBtn; BitBtn10: TBitBtn; Panel3: TPanel; BitBtn11: TBitBtn; BitBtn12: TBitBtn; BitBtn13: TBitBtn; BitBtn14: TBitBtn; BitBtn15: TBitBtn; BitBtn16: TBitBtn; BitBtn17: TBitBtn; BitBtn18: TBitBtn; BitBtn19: TBitBtn; BitBtn20: TBitBtn; procedure FormCreate(Sender: TObject); procedure Button1Click(Sender: TObject); procedure BitBtn2MouseEnter(Sender: TObject); procedure BitBtn1MouseEnter(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form2: TForm2; implementation {$R *.dfm} procedure TForm2.BitBtn1MouseEnter(Sender: TObject); begin mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0); mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0); Label1.Tag:= Label1.Tag -1; if Label1.Tag<0 then Label1.Tag:=0; Label1.Caption:= INTTOSTR(Label1.tag); Application.ProcessMessages; winapi.windows.Beep(1500,20); end; procedure TForm2.BitBtn2MouseEnter(Sender: TObject); begin mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0); mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0); Label1.Tag:= Label1.Tag +1; if Label1.Tag>255 then Label1.Tag:=255; Label1.Caption:= INTTOSTR(Label1.tag); Application.ProcessMessages; winapi.windows.Beep(2000,20); end; procedure TForm2.Button1Click(Sender: TObject); begin Close; end; procedure TForm2.FormCreate(Sender: TObject); begin Label1.Tag:=127; Label1.Caption:= INTTOSTR(Label1.tag); end; end. |
AW: Tuning Knopf D7
Hallo zusammen,
vieeelen Dank für Eure Hilfe. Danke an den Tip mit den Abakus!! Auch Dank an das Beispiel. Ich werds mir gleich mal reinziehen. Gruß an alle Reiner |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:05 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz