Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

(VB.NET):Integer zu System.Drawing.Color

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Computer-Forum
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Dominik



Anmeldungsdatum: 22.12.2004
Beiträge: 172

BeitragVerfasst am: 08.04.2005, 13:07    Titel: (VB.NET):Integer zu System.Drawing.Color Antworten mit Zitat

Hallo,
ich weiß, dass diese Frage normal in ein VB-Forum gehört, aber da VB im entfernten auch was mit QB zu tun hat meine Frage:

Wie konvertiere ich ein RGB-Farbausdruck im LongInteger-Format in eine System.Drawing.Color? Bei VB.NET03 ist es anscheinend nicht möglich einfach folgendes zu schreiben:

dim a as Long
a=255
Label1.ForeColor = a

Er schreibt mir dann einen Fehler anstatt die Fordergrundfarbe des Labels auf rot zu setzen.

Danke im Vorraus

Dominik
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 08.04.2005, 13:36    Titel: Antworten mit Zitat

Hallo.

Versucht doch mal &HFF0000 zuzuweisen oder liefert das auch einen Fehler? Vielleicht liegt der Fehler auch irgendwo anders in deinem Programm.

Viele Grüße!
Sebastian
_________________

Der Markt regelt das! | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Stephan



Anmeldungsdatum: 05.10.2004
Beiträge: 358
Wohnort: Hessen - 20km Nördlich von Frankfurt am Main

BeitragVerfasst am: 08.04.2005, 19:32    Titel: Antworten mit Zitat

Unter VB6 Funktioniert das mit dem Befehl CLNG() , probier mal, ob der unter VB.Net auch geht.

Also...

Code:

dim a as Long
a=255
Label1.ForeColor = CLNG(a)


Du könntest es (falls oben das nicht geht) über RGB probieren..

Code:

dim r as integer , g as integer , b as integer
r=255 : g=0 : b=0
Label1.ForeColor = RGB(r,g,b)

_________________
'Wir schätzen die Zeit erst, wenn uns nicht mehr viel davon geblieben ist.'
Leo Tolstoi
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Dominik



Anmeldungsdatum: 22.12.2004
Beiträge: 172

BeitragVerfasst am: 09.04.2005, 14:02    Titel: Antworten mit Zitat

Hallo,

wenn ich versuche irgendeinen Integer,Long oder String dem Label als Vordergrundfarbe zuzuweisen schreibt er mir immer folgendes:


Der Wert des Typs "Integer"/"String"/"Long" kann nicht zu System.Drawing.Color konvertiert werden.


Dies schreibt er mir auch, wenn ich es ohne eine Variable versuch:

Label1.ForeColor = "&HF0000"
oder
Label1.ForeColor = &HF0000

Über die RGB-Funktion funktioniert es auch nicht, da RGB einen Integer-Wert zurückgibt.


Ich habe eine Möglichkeit gefunden um eine Farbe mit Hilfe der Funktion FROMARGB(Red,Green,Blue) zuzuweisen:

Label.ForeColor = FromArgb(255,0,0) (rot)

Jedoch hab ich nur den RGB-Wert gegeben und weiß nicht was der Rot/Grün/Blau-Anteil ist. Gibt es eine Möglichkeit diese jeweils zu extrahieren?

Gruß
Dominik
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
helium



Anmeldungsdatum: 10.09.2004
Beiträge: 397
Wohnort: Leverkusen

BeitragVerfasst am: 09.04.2005, 17:34    Titel: Antworten mit Zitat

Ja. ('foo' ist ein meinen Beispielen die Variable des Typs Long, die die Farbe enthölt)

foo mod 256 => blau
foo \ 256 mod 256 => grün
foo \ (256 * 256) => rot


Ansonsten sollte folgendes gehen:

Label1.ForeColor = Color.FromArgb (foo)

In einem anderne Text habe ich folgendes gefunden (falls Color.FromArgb nicht funktionieren sollte)

Label1.ForeColor = System.Drawing.ColorTranslator.FromOle(foo)
_________________
Bevor Sie aufhören sich körperlich zu betätigen sollten Sie ihren Doktor befragen. Körperliche Inaktivität ist abnormal und gefährlich für Ihre Gesundheit.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Computer-Forum Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz