AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi RGB-Farbvorschau mit spinedit funzt nicht immer

RGB-Farbvorschau mit spinedit funzt nicht immer

Ein Thema von yankee · begonnen am 15. Mär 2004 · letzter Beitrag vom 16. Mär 2004
Antwort Antwort
Benutzerbild von yankee
yankee

Registriert seit: 10. Mär 2004
1.134 Beiträge
 
Lazarus
 
#1

RGB-Farbvorschau mit spinedit funzt nicht immer

  Alt 15. Mär 2004, 22:03
Ich habe eine RGB-Fabvorschau geschrieben. Funzt auch, aber wenn man in die spinedits Zahlen auf der Tastatur (anstatt Maus) eingibt dann mault das Programm, das der Integer ungültig ist. So sieht das aus:

Delphi-Quellcode:
procedure TForm7.farb_update;
begin
form7.Panel1.color :=RGB(form7.SpinEdit1.value, form7.spinedit2.value, form7.spinedit3.value);
end;

procedure TForm7.rotchg(Sender: TObject); //spinedit1.onchange
begin
farb_update;
end;

procedure TForm7.blauchg(Sender: TObject); //spinedit2.onchange
begin
farb_update;
end;

procedure TForm7.gupdate(Sender: TObject); //spinedit3.onchange
begin
farb_update;
end;
Ach und übrigens, wie kann man die Werte in Hexadezimal-Werte umrechnen?
Miniaturansicht angehängter Grafiken
fehler_176.jpg  
  Mit Zitat antworten Zitat
Benutzerbild von dizzy
dizzy

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

Re: RGB-Farbvorschau mit spinedit funzt nicht immer

  Alt 15. Mär 2004, 23:04
Du musst ungültige Eingaben, die sich nicht in einen Integer wandeln lassen, von Hand abfangen. Ein keine Eingabe '' ist auch eine ungültige Eingabe.

Eine andere Variante wäre es nicht auf onChange zu reagiren, sondern durch einen ButtonClick die Vorschau zu aktualisieren.
Ist einfacher, aber auch unschöner!

Schau dir dazu mal die Prozedur "Val" in der Hilfe an.


gruss,
dizzy

PS:
Zitat:
Ach und übrigens, wie kann man die Werte in Hexadezimal-Werte umrechnen?
Dazu gibt es reichlich Material. Einfach mal das Forum durchsuchen.
Fabian K.
INSERT INTO HandVonFreundin SELECT * FROM Himmel
  Mit Zitat antworten Zitat
Benutzerbild von yankee
yankee

Registriert seit: 10. Mär 2004
1.134 Beiträge
 
Lazarus
 
#3

Re: RGB-Farbvorschau mit spinedit funzt nicht immer

  Alt 16. Mär 2004, 06:16
naja, ich habe das forum bereits vor meinem Beitrag durchsucht. Ich habe allkes ausprobiert, was mir eingefallen ist, auch Val, try und except sowie if spineditX.value >=0
Aber allmählich gehen mir die Ideen aus.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie
(Moderator)
Online

Registriert seit: 29. Mai 2002
37.328 Beiträge
 
Delphi 2006 Professional
 
#4

Re: RGB-Farbvorschau mit spinedit funzt nicht immer

  Alt 16. Mär 2004, 06:26
Also zu mindest die Hau-Ruck-Methode mit try-exceot sollte geholfen haben.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.642 Beiträge
 
Delphi 2009 Professional
 
#5

Re: RGB-Farbvorschau mit spinedit funzt nicht immer

  Alt 16. Mär 2004, 07:57
Hallo,
ich weiß warum eine Exception auftritt.
Wenn im TSpinEdit eine Zahl z.B. 42 steht und Du diese Zahl markierst.
Jetzt möchtest Du die 42 durch 84 ersetzen. Dafür tippst Du zuerst auf
die acht und dann auf die vier. Was passiert aber, wenn Du auf die acht
getippt hast? Erst wird der Inhalt des TSpinEdit gelöscht und dann die acht
geschrieben. Die Löschung des Inhalt's wird jedoch als Änderungen erkannt
und das OnChange-Event wird ausgelöst bevor die acht in TSpinEdit steht.
Dadurch kommt es in farb_update zur Execption. Die Lösung wäre (wie
von Luckie erwähnt) dann folgende:
Delphi-Quellcode:
procedure TForm7.farb_update;
begin
  Try
    form7.Panel1.color :=RGB(form7.SpinEdit1.value, form7.spinedit2.value, form7.spinedit3.value);
  Except
    end;
end;
I come from outer space to save the human race
  Mit Zitat antworten Zitat
Benutzerbild von yankee
yankee

Registriert seit: 10. Mär 2004
1.134 Beiträge
 
Lazarus
 
#6

Re: RGB-Farbvorschau mit spinedit funzt nicht immer

  Alt 16. Mär 2004, 13:56
Danke für eure Antworten. Auf die try-Idee bin ich schon vorher mal gekommen, aber es hat trotzdem nicht gefunzt. Ich bin jetzt mal auf die Idee gekommen , das Programm zu kompilieren und danach nicht aus Delohi, sonder aus dem Windows-Explorer heraus zu starten. Und siehe da, ES FUNZT!!!
Delphi scheint ja nur aus irgendwelchen Debug-Gründen zu maulen, aber wenn es sein kann, dass irgendetwas schief läuft, dann würde man doch kein try nehmen, oder??
  Mit Zitat antworten Zitat
Jörn

Registriert seit: 5. Sep 2003
Ort: Helmstedt
312 Beiträge
 
#7

Re: RGB-Farbvorschau mit spinedit funzt nicht immer

  Alt 16. Mär 2004, 15:56
Zur Zahlenumwandlung (hex): http://micha.p2board.de/forum/thread.php?threadid=19
Ist leider schon älter, müsste ich mal aktualisieren: Statt der selbstgebastelten Funktion für Potenzen solltest du Power nehmen (war damals weder mir noch meinem Informatiklehrer bekannt)

MfG
  Mit Zitat antworten Zitat
Benutzerbild von dizzy
dizzy

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

Re: RGB-Farbvorschau mit spinedit funzt nicht immer

  Alt 16. Mär 2004, 22:30
Zitat von yankee:
Danke für eure Antworten. Auf die try-Idee bin ich schon vorher mal gekommen, aber es hat trotzdem nicht gefunzt. Ich bin jetzt mal auf die Idee gekommen , das Programm zu kompilieren und danach nicht aus Delohi, sonder aus dem Windows-Explorer heraus zu starten. Und siehe da, ES FUNZT!!!
Delphi scheint ja nur aus irgendwelchen Debug-Gründen zu maulen, aber wenn es sein kann, dass irgendetwas schief läuft, dann würde man doch kein try nehmen, oder??
Beim debuggen (in der IDE starten) mekert Delphi immer. Das ist standardmäßig so eingestellt, und gewollt! Kein Bug. In den Optionen kann man das irgendwo ausschalten.
Dann ist klar, dass ein try...except (scheinbar) nix gebracht hat


gruss,
dizzy
Fabian K.
INSERT INTO HandVonFreundin SELECT * FROM Himmel
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 11:24 Uhr.
Powered by vBulletin® Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2019 by Daniel R. Wolf