AGB  ·  Datenschutz  ·  Impressum  







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

Ampelschaltung

Ein Thema von 123Schülerin · begonnen am 3. Dez 2006 · letzter Beitrag vom 3. Dez 2006
Antwort Antwort
123Schülerin

Registriert seit: 3. Dez 2006
4 Beiträge
 
#1

Ampelschaltung

  Alt 3. Dez 2006, 13:22
Kann mir jemand erklären, wie man eine ampelschaltung programmiert??
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#2

Re: Ampelschaltung

  Alt 3. Dez 2006, 13:24
nachdenken und programmieren. hier mahct garantiert keiner deine hausaufgaben.
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#3

Re: Ampelschaltung

  Alt 3. Dez 2006, 13:28
Welche Gedanken hast du dir schon gemacht zur Ampelschaltung und an welcher Stelle kommst du nicht weiter?
Wir helfen dir gern wenn du nicht weiter kommst aber wir wollen auch etwas selbst bemühung sehen um nicht für andere die Hausaufgaben zu machen
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
123Schülerin

Registriert seit: 3. Dez 2006
4 Beiträge
 
#4

Re: Ampelschaltung

  Alt 3. Dez 2006, 13:31
ich weiß, dass ich verschiedene images einfügen muss. imrot, imrotgelb, imgrün und im gelb, aber ich verstehe nicht wie das mit true, false und dem timer funtioniert
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#5

Re: Ampelschaltung

  Alt 3. Dez 2006, 13:33
du könntest auch einfach drei tshapes einfügen, und die farbe verändern. das wäre weniger aufwändig. du müsstest nur
Delphi-Quellcode:
shape1.brush.color := clgreen;
shape2.brush.color := clgray;
shape3.brush.color := clgray;
schreiben, um z.b. eine grüne ampel zu haben. für gelb und rot entsprechend angepasste codes.
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.312 Beiträge
 
Delphi XE2 Professional
 
#6

Re: Ampelschaltung

  Alt 3. Dez 2006, 13:38
Hallo,

ich hab auch mal ne Ampel aus Spass programmiert.
Ich werde dir zwar nicht den kompletten Code geben, aber ein paar Anhaltspunkte:

z. B. Timer

in OnTimer des Timers hab ich es so gelöst:
Delphi-Quellcode:
procedure TForm1.Timer_AmpelTimer(Sender: TObject);
begin
  Label_Zustand.Caption := IntToStr(Zustand);

  case Zustand of
    1:
      begin
        Shape_rot.Brush.Color := Farbe_Rot;
        Shape_gelb.Brush.Color := Farbe_Gelb;
        Shape_gruen.Brush.Color := Farbe_Aus;

        Zustand := 2;
      end;
    2:
      begin
        {...}

        Zustand := 3;
      end;

{...}
Wie du siehst, hab ich 3 Shapes verwendet und schalte, je nach Zustand, die Farbe der einzelnen Shapes um.

Grunde ist es eine Endlos-Schleife.
Zustand 1 = Ampel rot/gelb
Zustand 2 = Ampel gruen
Zustand 3 = Ampel gelb
Zustand 4 = Ampel rot

je nach Timer-Intervall läuft die Ampel schneller oder langsamer.

Vielleicht hilft dir das ja.

P.S.: Farbe_Rot, Farbe_Gelb und Farbe_Aus sind Konstanten. Es ginge auch mit clRed, clYellow und clBlack (= Farbe_Aus bei mir)
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#7

Re: Ampelschaltung

  Alt 3. Dez 2006, 14:46
Zitat von 123Schülerin:
ich weiß, dass ich verschiedene images einfügen muss. imrot, imrotgelb, imgrün und im gelb, aber ich verstehe nicht wie das mit true, false und dem timer funtioniert
Hi,
ich verstehe ja, dass du einen gewissen Zeitdruck hast, wenn du am 6ten eine Klausur schreiben musst. Damit du hier aber schnellst möglich eine Antwort bekommst und die dir auch möglichst gut weiter hilft, solltest du dir immer ein paar Minuten Zeit nehmen deine Fragen auszuformulieren. Sag einfach mal ein wenig mehr, es ist immer gut zu wissen, was genau das Problem ist das du lösen willst, was du hier schon weißt und wo du nicht weiter kommst (soweit hast du das sicher schon in den anderen Beiträgen gelesen).
Deine Antwort auf die Frage ist aber nicht gerade Hilfreich. Du sprichst hier von den Images imrot, imrotgelb,... und dann irgendwas von true/false und einem Timer. Wo kommen letztere her?
Das Nachfragen der Leute kostet dich doppelt Zeit, immerhin liest hier keine jede Sekunde alle Threads, kommt also jmd. hier vorbei und muss nachfragen, dauert es erstmal x Minuten bis du die Antwort liest, die offenen Fragen beantwortest und dann wieder y Minuten bis der jenige der fragte deine Antwort liest. Schreibst du gleich alles wichtige auf, so ersparst du die Nachfragen, dir kann gezielter und damit besser geholfen werden und das ganze auch noch schneller!

An sich solltest du einfach mal damit anfangen, dass du erklärst, was du unter einer Ampelschaltung verstehst. Lass dabei erstmal den Code weg, schreib einfach nur die Idee auf. Hast du nur eine Ampel? Oder mehrere von einander abhängige (z.B. an eine Kreuzung). Dann solltest du noch sagen wie die Ampel geschaltet wird (denke dass möchtest du in einem gewissen Zeitinterval machen).
So ganz grob hast du also mindestens eine Ampel, die aus drei Lampen (Rot, Gelb, Grün) besteht, dann wäre das nächste wie die wann leuchten. Es ist zwar jedem klar, dass eine Ampel nicht von Rot auf Grün springt, aber das solltest du als Beschreibung des gesamten Problems mal ruhig aufschreiben. Das Umsetzen in Code kann danach erfolgen.

Hast du alles aufgeschrieben, was zum Problem gehört, kannst du dann sagen was du wie realisieren möchtest. So würdest du offensichtlich die Ampel gerne mit Images realisieren (auch da bitte etwas genauer werden) und das Umschalten soll wohl über einen Timer gesteuert werden?
Dazu solltest du dann grob was sagen und wenn du an einer Stelle nicht weiter kommst erklär nochmal woran genau du scheiterst. Du sagst du verstehst den Timer nicht, aber was genau? Weißt du wozu ein Timer da ist? Meldet der Compiler einen Fehler oder läuft es nicht wie es soll?


Gruß Der Unwissende
  Mit Zitat antworten Zitat
Antwort Antwort


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 15:54 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