Autor Beitrag
Fabian W.
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1766

Win 7
D7 PE
BeitragVerfasst: Do 26.05.05 11:41 
Dann kannst du dein Problem mit nem Panel lösen.
matze.de
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 576

Win95, Win98 SE, WinXp Prof SP2
D7P, D8P, FPC2.0
BeitragVerfasst: Do 26.05.05 11:41 
user profile iconFabian W. hat folgendes geschrieben:
Mann müsste jetzt halt wissen ob er was per Tastatur reinschreiben will.

Warum das denn? Das geht auch per Tastertur. Du überschreibst die EingabeRoutine der Komponente und lässt darin zb nur 1,2,3,4,5,6,7,8,9,0,+,-,*,/ zu und der rest wird ignoriert und in den Ereignissen machste das selbe wie bei nem buttonklick....

mfg matze

_________________
si tacuisses, philosophus mansisses.
Fabian W.
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1766

Win 7
D7 PE
BeitragVerfasst: Do 26.05.05 11:43 
Nein, das war nicht gemeint, da mein Lösungsvorschlag n Panel is, in das man per Tastatur nix reinschreiben kann (zumindeest nicht ohne Code :wink: ).
matze.de
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 576

Win95, Win98 SE, WinXp Prof SP2
D7P, D8P, FPC2.0
BeitragVerfasst: Do 26.05.05 12:04 
user profile iconFabian W. hat folgendes geschrieben:
Nein, das war nicht gemeint, da mein Lösungsvorschlag n Panel is, in das man per Tastatur nix reinschreiben kann (zumindeest nicht ohne Code :wink: ).


Ohne Code geht gar nix ;)

mfg matze

_________________
si tacuisses, philosophus mansisses.
Fabian W.
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1766

Win 7
D7 PE
BeitragVerfasst: Do 26.05.05 12:05 
Zitat:
Ohne Code geht gar nix ;)

Wohl wahr.

Zitat:
Mathias
Quod licet Jovi, non licet bovi.

Wer ist der Ochse?
matze.de
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 576

Win95, Win98 SE, WinXp Prof SP2
D7P, D8P, FPC2.0
BeitragVerfasst: Do 26.05.05 12:07 
Quod licet Jovi, non licet bovi heißt so viel wie "Was dem Jupiter erlaubt ist, ist einem Ochsen noch lange nicht erlaubt." ;)

mfg matze

_________________
si tacuisses, philosophus mansisses.
Fabian W.
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1766

Win 7
D7 PE
BeitragVerfasst: Do 26.05.05 14:05 
Weis ich doch, so blöd ebin ich dann doch net. Ich wollte wissen ob du jemanden bestimmtes mit dem Ochsen meinst.
matze.de
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 576

Win95, Win98 SE, WinXp Prof SP2
D7P, D8P, FPC2.0
BeitragVerfasst: Fr 27.05.05 08:11 
Ja ich bin Jupiter und alle Anderen sind Ochsen :mrgreen:
Ne Quatsch hatte keinen bestimmten gemeint. Von mir aus kann ich den auch ändern...

mfg matze

_________________
si tacuisses, philosophus mansisses.
Fabian W.
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1766

Win 7
D7 PE
BeitragVerfasst: Fr 27.05.05 08:17 
:flehan: ^^. Ok, schluss jetzt mit OT.

Ist das Problem jetzt behoben?
mehmeh Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 97

WIN XP
D5 Prof
BeitragVerfasst: Fr 27.05.05 08:47 
JA also ich werd´s dann wohl doch it nen Panel versuchen.
Danke euch

EDIT: ach mensch,
was mir gerade noch eingefollen ist: ICH könnt ja auch nen Label nehmen. zum anzeigen reicht das völlig. Sieht zwar neicht so schön aus, aber da kann ich ja noch dran arbeiten.



Moderiert von user profile iconGausi: Beiträge zusammengefasst.
Fabian W.
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1766

Win 7
D7 PE
BeitragVerfasst: Fr 27.05.05 09:50 
Das geht, nur is es was rechstbündigkeit betrifft net nagz so flexibel.
mehmeh Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 97

WIN XP
D5 Prof
BeitragVerfasst: Fr 27.05.05 10:20 
Ah ha und was heißt das?
Die Eigenschaft Alignment besitze es doch!
Fabian W.
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1766

Win 7
D7 PE
BeitragVerfasst: Fr 27.05.05 10:43 
*Blp*. Hups ich revidiere meine Meinung und behaupte das Gegenteil :wink: . Mir war nicht bekannt dass ein Label diese Eigenschaft auch besitzt. Du müsstest nur die Eigenschaft Autosize abschalten (auch net sicher is aber besser).
Lannes
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2352
Erhaltene Danke: 4

Win XP, 95, 3.11, IE6
D3 Prof, D4 Standard, D2005 PE, TurboDelphi, Lazarus, D2010
BeitragVerfasst: Fr 27.05.05 10:51 
Hallo,

ein Stringrid als Alternativ-Vorschlag :cool:
Folgende Einstellungen am Stringgrid im OI vornehmen:
    ScrollBars = ssNone
    Options auf goEditing = False
    FixedCols und FixedRows = 0
    RowCount und ColCount = 1
    Width = DefaultColWidth;
    Height = DefaultRowHeight;


ausblenden 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:
procedure TForm1.FormCreate(Sender: TObject);
begin
  activeControl := Stringgrid1;
end;

procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
  Rect: TRect; State: TGridDrawState);
var s     : String;
    aRect : TRect;
begin
  s := StringGrid1.Cells[ACol, ARow];
  aRect := Rect;
  StringGrid1.canvas.brush.color:=clWhite;
  StringGrid1.canvas.fillrect(rect);
  dec(rect.right,8);
  inc(rect.Top,4);
  DrawText(StringGrid1.Canvas.Handle, PChar(s), Length(s), Rect, DT_Right);  
  StringGrid1.canvas.DrawFocusRect(aRect);
end;

procedure TForm1.StringGrid1KeyPress(Sender: TObject; var Key: Char);
begin
  if Key in ['0'..'9'then
    begin
    StringGrid1.Cells[0,0] := StringGrid1.Cells[0,0]+Key;
    key := #0;
    end
    else
      key := #0;
end;


//Edit : Code verbessert, FocusRect wird jetzt überschrieben (XOR).
//Edit2 : KeyPress verändert, jetzt können nur 0 > 9 eingegeben werden.

_________________
MfG Lannes
(Nichts ist nicht Nichts) and ('' <> nil ) and (Pointer('') = nil ) and (@('') <> nil )


Zuletzt bearbeitet von Lannes am Fr 27.05.05 11:06, insgesamt 1-mal bearbeitet
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 27.05.05 11:04 
user profile iconLannes hat folgendes geschrieben:
Hallo,

ein Stringrid als Alternativ-Vorschlag :cool:

Der Vorschlag ist nicht :cool:, sondern :autsch:.
Lannes
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2352
Erhaltene Danke: 4

Win XP, 95, 3.11, IE6
D3 Prof, D4 Standard, D2005 PE, TurboDelphi, Lazarus, D2010
BeitragVerfasst: Fr 27.05.05 11:08 
Hallo,
user profile iconLuckie hat folgendes geschrieben:
user profile iconLannes hat folgendes geschrieben:
Hallo,

ein Stringrid als Alternativ-Vorschlag :cool:

Der Vorschlag ist nicht :cool:, sondern :autsch:.


warum.

_________________
MfG Lannes
(Nichts ist nicht Nichts) and ('' <> nil ) and (Pointer('') = nil ) and (@('') <> nil )
Fabian W.
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1766

Win 7
D7 PE
BeitragVerfasst: Fr 27.05.05 13:23 
Erstens wird nur was angezeigt, nix per Tasta eingeb.
Zweitens geht's einfacher und ohne den ganzen Code, der vielleicht bei anderen Verionnen gar net funzt.
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 27.05.05 13:55 
Zusätzlicher Overhead; 99,9% der Funktionalität der StringGrid Komponente wird nicht gebraucht; das StringGrid eine andere Aufgabe hat; man den Missbrauch von Komponenten und Steuerelementen vermeiden sollte. Und es einfach nur Unsinn ist, da man es mit dem Edit wesentlich einfacher hinbekommt.
Lannes
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2352
Erhaltene Danke: 4

Win XP, 95, 3.11, IE6
D3 Prof, D4 Standard, D2005 PE, TurboDelphi, Lazarus, D2010
BeitragVerfasst: Sa 28.05.05 00:19 
Hallo,
user profile iconmehmeh hat folgendes geschrieben:
was ist da so schwer zu verstehen?
Ich will, wie bei einem Taschenrechner, meine Zahlen, die ich eingebe rechts anzeigen lassen.
Beispiel
ich geb ne "1" ein und die taucht rechts auf,
dann geb ich ne "2" ein und die "1" schiebt sich nach vorne und die "2" kommt gleich dahinter --> "12"
ist das jetzt klarer?
genauso sieht es bei der Nutzung des StringGrids aus.

user profile iconFabian W. hat folgendes geschrieben:
Erstens wird nur was angezeigt, nix per Tasta eingeb.
Zweitens geht's einfacher und ohne den ganzen Code, der vielleicht bei anderen Verionnen gar net funzt.
per Tastatur oder wie mehmeh geschrieben hat: "... per Buttonclick" ist eigentlich nicht Thema hier im Thread(siehe Titel), aber kein Problem das im OnClick der Buttons einzubauen.
Bei welchen Versionen soll das nicht klappen? Hier nur Code posten der bei allen Delphi-Versionen lauffähig ist?

user profile iconLuckie hat folgendes geschrieben:
Zusätzlicher Overhead; 99,9% der Funktionalität der StringGrid Komponente wird nicht gebraucht; das StringGrid eine andere Aufgabe hat; man den Missbrauch von Komponenten und Steuerelementen vermeiden sollte. Und es einfach nur Unsinn ist, da man es mit dem Edit wesentlich einfacher hinbekommt.

ja, zusätzlicher Overhead usw. ist richtig, stimme Dir bis auf den letzten Satz zu.

-wesentlich einfacher?-
gewünscht war Editfeld wie in einem Taschenrechner =
Ausrichtung rechts, Hintergrundfarbe weiß, Schrift-Farbe schwarz bei Enabled=False(da gab es doch ein paar Threads bzgl Enabled?), nicht möglich den Cursor zu setzen, nicht markieren

Das habe ich mit meinem Code erreicht, ohne eine Komponente zu erstellen.
Wie geht es einfacher ohne neue Komponente?

_________________
MfG Lannes
(Nichts ist nicht Nichts) and ('' <> nil ) and (Pointer('') = nil ) and (@('') <> nil )
Fabian W.
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1766

Win 7
D7 PE
BeitragVerfasst: Sa 28.05.05 07:05 
Zitat:
Wie geht es einfacher ohne neue Komponente?

Is'n Panel für dich neu?