weiss jetzt noch jemand, wie man die aktuellen farben der console eruiert?
So 'funzt' das zumindest unter Win2k:
use strict;
use diagnostics;
use Win32::Console;
# Farbcodes, siehe in der Hilfe
# zu Windows zum color-Befehl
my %colors = ( '0' => 'Schwarz',
'1' => 'Dunkelblau',
'2' => 'Dunkelgruen',
'3' => 'Blaugruen',
'4' => 'Dunkelrot',
'5' => 'Violett',
'6' => 'Ocker',
'7' => 'Hellgrau',
'8' => 'Dunkelgrau',
'9' => 'Blau',
'A' => 'Gruen',
'B' => 'Zyan',
'C' => 'Rot',
'D' => 'Magenta',
'E' => 'Gelb',
'F' => 'Weiss'
);
my $console = Win32::Console->new;
my $default_dec = ($console->Info())[4];
my $default_hex = sprintf "%02X", $default_dec;
my @color = split //, $default_hex;
print $colors{$color[1]}, ' auf ', $colors{$color[0]};
Das eklige dabei ist, dass als Attributwert eine Dezimalzahl geliefert wird, die du erst noch nach hexadezimal umwandeln musst, bevor du die Hexwerte mit dem Farb-Hash abgleichen kannst. Und richtig nervig ist, dass schwarzer Hintergrund Standard ist und somit als Farbwert regelmäßig unterschlagen wird.
Siechfred
--
Ein Selbständiger ist jemand, der bereit ist, 16 Stunden am Tag zu arbeiten, nur um nicht 8 Stunden für einen Anderen arbeiten zu müssen.
Ein Selbständiger ist jemand, der bereit ist, 16 Stunden am Tag zu arbeiten, nur um nicht 8 Stunden für einen Anderen arbeiten zu müssen.