AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte Delphi lightshow auf der Tastatur :)

lightshow auf der Tastatur :)

Ein Thema von smallsmoker · begonnen am 10. Okt 2008 · letzter Beitrag vom 13. Okt 2008
Antwort Antwort
Seite 4 von 4   « Erste     234
Benutzerbild von smallsmoker
smallsmoker
Registriert seit: 12. Nov 2007
Hi ich habe mir eine prozedure gebastelt die eine kleine lightshow auf den Leds auf der Tastatur veranstaltet:

Delphi-Quellcode:
procedure lightshow();

  procedure dokeybdInput(vkcode: integer);
  begin
    keybd_event(vkcode,KEYEVENTF_EXTENDEDKEY or 0,0,0);
    keybd_event(vkcode,0,KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP,0);
  end;

  procedure mylightshow();
  var
    i: integer;
  begin
    for I := 0 to 3 - 1 do
    begin
      dokeybdInput(VK_NUMLOCK);
      dokeybdInput(VK_CAPITAL);
      dokeybdInput(VK_SCROLL);
      sleep(200);
      dokeybdInput(VK_NUMLOCK);
      dokeybdInput(VK_CAPITAL);
      dokeybdInput(VK_SCROLL);
      sleep(200);
    end;

    for I := 0 to 3 - 1 do
    begin
      dokeybdInput(VK_NUMLOCK);
      sleep(125);
      dokeybdInput(VK_NUMLOCK);
      sleep(125);
      dokeybdInput(VK_CAPITAL);
      sleep(125);
      dokeybdInput(VK_CAPITAL);
      sleep(125);
      dokeybdInput(VK_SCROLL);
      sleep(125);
      dokeybdInput(VK_SCROLL);
      sleep(125);
    end;

    for I := 0 to 3 - 1 do
    begin
      dokeybdInput(VK_NUMLOCK);
      sleep(125);
      dokeybdInput(VK_NUMLOCK);
      sleep(125);
      dokeybdInput(VK_CAPITAL);
      sleep(125);
      dokeybdInput(VK_CAPITAL);
      sleep(125);
      dokeybdInput(VK_SCROLL);
      sleep(125);
      dokeybdInput(VK_SCROLL);
      sleep(125);
      dokeybdInput(VK_CAPITAL);
      sleep(125);
      dokeybdInput(VK_CAPITAL);
      sleep(125);
    end;
  end;

var
  KeyState: TKeyboardState;
  isNum, isCAP, isScroll: boolean;
begin
  isNum := false;
  isCAP := false;
  isScroll := false;

  GetKeyboardState(KeyState);

  if not (KeyState[VK_NUMLOCK] = 0) then
  begin
    isNum := true;
    dokeybdInput(VK_NUMLOCK);
  end;

  if not (KeyState[VK_CAPITAL] = 0) then
  begin
    isCAP := true;
    dokeybdInput(VK_CAPITAL);
  end;

  if not (KeyState[VK_SCROLL] = 0) then
  begin

    isScroll := true;
    dokeybdInput(VK_SCROLL);
  end;

  mylightshow();

  if isNum then
    dokeybdInput(VK_NUMLOCK);

  if isCAP then
    dokeybdInput(VK_CAPITAL);

  if isScroll then
    dokeybdInput(VK_SCROLL);
end;
erst werden alle leds ausgeschaltet dann kommt die lightshow.
Nach dem abspielen werden die alten zustände von num etc wiederhergestellt

ich wollte euch nach weiteren netten (amüsanten) "kompositionen" fragen, vieleicht fällt jemanden ja was ein

ich glaube nicht das das stoff für die codelib ist oder ? wenn doch dann kann den thread ja ein mod verschieben. (danke im voraus)

mfg smallsmoker

edit: licht- und ligth- in lightshow verbessert
 
BullsEye

 
Delphi 7 Personal
 
#31
  Alt 12. Okt 2008, 21:28
Find ich ne tolle Sache.

Vllt könntest du das ganze als Grfikvisualisierung für Musik benutzten. Sprich du fängst das Outputsignal ab und wandelst das dann halt entsprechned um. Bei Winamp gab es mal sowas!
Marc
  Mit Zitat antworten Zitat
Benutzerbild von Dunkel
Dunkel

 
Delphi 2007 Enterprise
 
#32
  Alt 12. Okt 2008, 21:31
Auch wenn's 'ne nette Spielerei ist. Warum sollte man die Tastatur-LEDs zum visualisieren von Programmzuständen benutzen wollen? Es kommt doch auch (virtually) niemand auf die Idee, die CD-Laufwerk-Schublade als Kaffeetassenhalter zu benutzen, oder?
  Mit Zitat antworten Zitat
Relicted

 
Delphi 10.4 Sydney
 
#33
  Alt 13. Okt 2008, 07:01
klasse idee! ich amüsier mich immer köstlich über sowas.
aber noch mehr spass habe ich an den kommentaren "meine led's gehn kapuuuttt " "gehen sie nicht!" "doch gehen sie wohl!"
Echt.. so fängt die woche wieder gut an danke dp!

Dunkel: wofür is die denn sonst gedacht?! check ich ned!

gruß
reli
  Mit Zitat antworten Zitat
Benutzerbild von Dunkel
Dunkel

 
Delphi 2007 Enterprise
 
#34
  Alt 13. Okt 2008, 09:22
Zitat von Relicted:
Dunkel: wofür is die denn sonst gedacht?! check ich ned!
Als Bierdosenhalter, natürlich...
  Mit Zitat antworten Zitat
BullsEye

 
Delphi 7 Personal
 
#35
  Alt 13. Okt 2008, 09:27
Zitat von Dunkel:
Auch wenn's 'ne nette Spielerei ist. Warum sollte man die Tastatur-LEDs zum visualisieren von Programmzuständen benutzen wollen?
Ok, wenn du das so siehst, was soll man den mit ner normalen Lightshow? Ist doch AUCH NUR SPIELERREI! Ich kenne viele, die sowas als kleine Lichtorgel benutzten wollen. Such doch einfach mal in Google nach "Lichtorgel" da findet ma soviel drüber. Und nicht jeder hat die Ahnung bzw Lust oder gar das Geld sich ne große zu bauen, da muss man nehmen was man hat.
Macht McGyver auch immer


Zitat von Dunkel:
Es kommt doch auch niemand auf die Idee, die CD-Laufwerk-Schublade als Kaffeetassenhalter zu benutzen, oder?
Das behauptest du! Ich habe schon Programm gesehen die das Laufwerk öffnen und schließen. Da hat auch jdn mal gesagt, er wollte da was abstellen
Marc
  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 14:18 Uhr.
Powered by vBulletin® Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf