Delphi - Problemy newbie
Data:2009-09-08
Czas:20:45:00
Witam,
Troszkę poszukałem w sieci i na stronie, ale niestety nie znalazłem tego co chciałem.
Chodzi mi o pewnego rodzaju zabezpieczenie do Edit'a.
Mianowicie, jak sprawić aby minus '-' był dopuszczalny tylko na pierwszej pozycji oraz tylko jeden w całym polu.
Wiem, że muszę zrobić to w KeyPress, chodzi mi głównie o kod.
Nick tego, który mi pomoże, zawidnieje w programie ^^.
Mam nadzieję, że to właściwy dział.
Pozdrawiam,
Remington
Remington
Data:2009-09-08
Czas:20:52:00
Dodam jeszcze, że znalazłem w sieci nieco inny kod, który dopuszcza tylko określone znaki do pola (i nieco go urozmaiciłem xD). Nawet nie jestem pewien czy to nie jest z tej strony :D
Więc jeśli istnieje możliwość, prosiłbym o połączenie kodu o który mi chodzi z obecnym (albo zrobienie tego tak, aby wszystko działało)
IF not (Key in ['0'..'9' , ',' , '-' , #8]) THEN
BEGIN
Key := #0 ;
Form1.Label4.Color:=clRed;
END
ELSE Form1.Label4.Color:=clBlack;
P.S
Jak formatować tekst tutaj w postach? można 'z gościa'? :] HTML? BB? :D
Jeśli znak '-' ma być dopuszczalny tylko na pierwszej pozycji i tylko max. jeden w polu to inaczej rzecz ujmując - albo jest on na pierwszej pozycji albo nie ma go wcale.
Według mnie, powinno być to rozwiązane w ten sposób:
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
var
blad : boolean;
begin
blad := not (Key in ['0'..'9' , ',' , '-' , #8]);
if (Key = '-') and (Edit1.SelStart<>0) Then
blad := True;
if (blad) Then
begin
Key := #0 ;
Form1.Label4.Color:=clRed;
end else
Form1.Label4.Color:=clLime;
end;
Pozdrawiam!
P.S. A kod najlepiej obejmować w znaczniki CODE przy użyciu kwadratowych nawiasów. Serwis automatycznie rozpoznaje język.
Remington
Data:2009-09-13
Czas:23:17:00
Wielkie dzięki, nieco to przerobiłem pod własny deseń, ale to jest dokładnie to czego szukałem. I działa
Żeby tak nie wychwalać powiem, że zjadłeś jeden enter w kodzie ]:>
Tak jak obiecałem, Twój nick nick dodany do programu. [Sekcja About]
POBIERZ: http://www.speedyshare.com/840880906.html
[plik czysty, ręczę własnym komputerem :)]
Jak widać po programie z NASA to ja nie jestem. Mimo wszystko mała rzecz, a cieszy :]
Fajnie, że mogłem pomóc. A ten Twój program bardzo fajny - przemyślany i funkcjonalny. Jeśli pozwolisz, zostawię go sobie na dysku - pewnie się kiedyś przyda.
Pozdrawiam!
Remington
Data:2009-09-15
Czas:19:57:00
Nie ma problemu, jeżeli chcesz to mogę Ci posyłać nowsze wersje na maila (ale takie, które naprawdę coś wnoszą, nie pomniejsze update'y).
Cieszy mnie pozytywna opinia fachowca :D W sumie w delphi dopiero raczkuję, IDE jest dużym ułatwieniem, jeżeli chodzi o moją wiedzę to znam tylko Pascala :]
Jest to mój pierwszy program okienkowy (przydatny).
Jak na razie mam jeszcze 2 nurtujące pytania, ale pomęczę się z nimi sam (przynajmniej spróbuję), więc nie wykluczam, że odezwę się wkrótce...
Pozdrawiam,
Remington
Nie ma sprawy. Służę. ;-)