AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Prüfen ob String = Farbcode ist

Ein Thema von kingflo · begonnen am 14. Sep 2005 · letzter Beitrag vom 14. Sep 2005
Antwort Antwort
Seite 1 von 2  1 2      
kingflo

Registriert seit: 21. Jun 2004
Ort: Hamburg
502 Beiträge
 
Delphi 7 Professional
 
#1

Prüfen ob String = Farbcode ist

  Alt 14. Sep 2005, 15:57
Hallo ich möchte gerne einen String aus edit1 auf gültigkeit prüfen.

Es ist so dort kann ein Farbcode eingegeben werden, und jetzt möchte ich wissen, ob es auch ein gültiger Farbcode ist.

z.B wenn der User #232399 eingegeben hätte, dann ist alles ok und wenn im edit feld aber 232399 oder etwas ganz anderes steht dann soll eine Meldung kommen mit kein gültiger Farbwert.
Problem ist, dass es so viele Farbcodes gibt d.H der User muss ja auch #2833AA eingeben können usw. Jetzt weiß ich leider nicht, wie ich auf Farbcodes prüfen kann.

Als Idee hatte ich es so, das man die StringLänge prüft muss dan = 7 sein und dass man das erste Zecihen prüft dieses muss dann also # sein, und dann müsste man prüfen, ob die restlichen zeichen ungleich 1,2,3,4,5,6,7,8,9,A,B,C,D,E,F sind und wenn ja dann ist die eingabe falsch. Allerding weiß ich nicht genau wie ich das machen kann?
Ich könnte zwar jeden string prüfen wäre aber glaube ich etwas aufwendig wenn ich alle positionen prüfe oder? gibt es vielleicht eine bessere Möglichkeit?
Florian Gilde
  Mit Zitat antworten Zitat
LoL
(Gast)

n/a Beiträge
 
#2

Re: Prüfen ob String = Farbcode ist

  Alt 14. Sep 2005, 16:01
Delphi-Quellcode:
try
  StringToColor()
except
  {war wohl nix}
end;
//Tags vergessen und verschrieben
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#3

Re: Prüfen ob String = Farbcode ist

  Alt 14. Sep 2005, 16:02
Farbstrings fangen soweit ich weiß immmer mit "$00" an... dann halt zusätzlich noch die Stringlänge überprüfen und dann dürfte es eigentlich keine Probleme geben..
Michael
  Mit Zitat antworten Zitat
Benutzerbild von dizzy
dizzy

Registriert seit: 26. Nov 2003
Ort: Lünen
1.932 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Prüfen ob String = Farbcode ist

  Alt 14. Sep 2005, 16:05
1) Länge prüfen
2) Erstes Zeichen zu '$' machen
3) StrToInt(TEdit.Text) -> bei Exception kein gültiger Zahlenwert

Gruss,
Fabian
Fabian K.
INSERT INTO HandVonFreundin SELECT * FROM Himmel
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#5

Re: Prüfen ob String = Farbcode ist

  Alt 14. Sep 2005, 16:06
Deine Idee mit dem Farbcode ist nix, das blickt kein normaler Mensch.
Zur Auswahl einer Farbe verwendet man TColorDialog.
Sollte TColorDialog zu wenig Funktionalität für deine Zwecke besitzen, gibt es ungefähr
200 andere Controls, die das mehr oder weniger gut können.
z.B.:
http://www.torry.net/vcl/dialogs/ext...rdialogadv.zip
Andreas
  Mit Zitat antworten Zitat
kingflo

Registriert seit: 21. Jun 2004
Ort: Hamburg
502 Beiträge
 
Delphi 7 Professional
 
#6

Re: Prüfen ob String = Farbcode ist

  Alt 14. Sep 2005, 16:20
Zitat von dizzy:
1) Länge prüfen
2) Erstes Zeichen zu '$' machen
3) StrToInt(TEdit.Text) -> bei Exception kein gültiger Zahlenwert

Gruss,
Fabian
Das dürfte keine So gute Idee sein, denn ich kann bei Farbcodes auch Bustaben benutzen von a - f
Florian Gilde
  Mit Zitat antworten Zitat
xaromz

Registriert seit: 18. Mär 2005
1.682 Beiträge
 
Delphi 2006 Enterprise
 
#7

Re: Prüfen ob String = Farbcode ist

  Alt 14. Sep 2005, 16:22
Hallo,
Zitat von kingflo:
Zitat von dizzy:
1) Länge prüfen
2) Erstes Zeichen zu '$' machen
3) StrToInt(TEdit.Text) -> bei Exception kein gültiger Zahlenwert ;)

Gruss,
Fabian
Das dürfte keine So gute Idee sein, denn ich kann bei Farbcodes auch Bustaben benutzen von a - f
Deshalb das $ am Anfang -> Macht einen Hex-String.

Gruß
xaromz
//Edit: Rechtschreibung
  Mit Zitat antworten Zitat
LoL
(Gast)

n/a Beiträge
 
#8

Re: Prüfen ob String = Farbcode ist

  Alt 14. Sep 2005, 16:23
Ich wiederhole mich ja nur ungern , aber warum machst du nicht einfach:
Delphi-Quellcode:
try
  StringToColor(Edit1.Text)
except
  ShowMessage('Kein gültiger Farbwert');
end;
Dann kann da auch nichts passieren und es erfüllt doch das was du willst oder?
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#9

Re: Prüfen ob String = Farbcode ist

  Alt 14. Sep 2005, 16:25
Zitat von kingflo:
Zitat von dizzy:
1) Länge prüfen
2) Erstes Zeichen zu '$' machen
3) StrToInt(TEdit.Text) -> bei Exception kein gültiger Zahlenwert

Gruss,
Fabian
Das dürfte keine So gute Idee sein, denn ich kann bei Farbcodes auch Bustaben benutzen von a - f
OH
StrToInt konvertiert den in S angegebenen String in einen Integer-Wert. S muss die Entsprechung eines ganzzahligen Wertes (dezimal oder hexadezimal) sein. Enthält er keinen gültigen Wert, wird eine EConvertError-Exception ausgelöst.


Aber was spricht gegen deinen eigenen Vorschlag? Weniger aufwendig geht schlecht, denn wie willst du einen String validieren, ohne alle Zeichen zu prüfen?

[add]Wenn du den String im Erfolgsfall auch konvertieren willst, bietet sich natürlich Lols Variante an .[/add]
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
kingflo

Registriert seit: 21. Jun 2004
Ort: Hamburg
502 Beiträge
 
Delphi 7 Professional
 
#10

Re: Prüfen ob String = Farbcode ist

  Alt 14. Sep 2005, 16:41
Zitat von LoL:
Ich wiederhole mich ja nur ungern , aber warum machst du nicht einfach:
Delphi-Quellcode:
try
  StringToColor(Edit1.Text)
except
  ShowMessage('Kein gültiger Farbwert');
end;
Dann kann da auch nichts passieren und es erfüllt doch das was du willst oder?
So habe ich es jetzt auch gemacht geht super.
Ich habe auch gleich nach dem Post deinen Vorschlag benutzt hatte aber den Vorschlag von dizzy (doof wie ich bin) nicht ganz verstanden. Deshalb habe ich noch gepostet denn ich wusste nicht dass ein $ am Anfang -> einen Hex-String liefert.
Florian Gilde
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:52 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz