AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Anfänger Frage: Wie funktionert das nochmal mit Randomize?!!
Thema durchsuchen
Ansicht
Themen-Optionen

Anfänger Frage: Wie funktionert das nochmal mit Randomize?!!

Ein Thema von MiKeNNtKoiNer · begonnen am 27. Jan 2009 · letzter Beitrag vom 27. Jan 2009
Antwort Antwort
Seite 1 von 2  1 2      
MiKeNNtKoiNer

Registriert seit: 27. Jan 2009
18 Beiträge
 
#1

Anfänger Frage: Wie funktionert das nochmal mit Randomize?!!

  Alt 27. Jan 2009, 17:16
Hallo Leute

ich kling zwar ziemlich blöd aber ich kriegs einfach nicht mehr raus!!

Ich hab mir jetzt vor kurzem Turbo Delphi 2006 runtergeladen und wollt da mit was einfachem anfangen. Da dacht ich sofort an ein blinkendes Edit-Feld, was ich schon einmal in der Schule programmiert hatte, also habe ich ein Edit-Feld und einen Timer eingefügt. Der Quelltext dazu ist der hier:

Delphi-Quellcode:
unit Unit2;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls;

type
  TForm2 = class(TForm)
    Timer1: TTimer;
    Edit1: TEdit;
    procedure Timer1Timer(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form2: TForm2;

implementation

{$R *.dfm}

procedure TForm2.Timer1Timer(Sender: TObject);
var r: integer;
begin
Randomize;
Random (1,16777216) := r;
edit1.color := r;
end;

end.

So oder so ähnlich hat ich das in Erinnerung. Danke für jede Hilfe, denn jedesmal wenn ich starten will kommt ein Fehlermeldung, weil es anscheinend zu viele Parameter gibt.

Mfg
  Mit Zitat antworten Zitat
craash

Registriert seit: 23. Nov 2008
Ort: Mühlacker
79 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: Anfänger Frage: Wie funktionert das nochmal mit Randomiz

  Alt 27. Jan 2009, 17:19
-unsinn-
uses Delphi 5 Std. / TurboDelphi 2006
  Mit Zitat antworten Zitat
MiKeNNtKoiNer

Registriert seit: 27. Jan 2009
18 Beiträge
 
#3

Re: Anfänger Frage: Wie funktionert das nochmal mit Randomiz

  Alt 27. Jan 2009, 17:21
Hab ich ausprobiert aber es funktioniert net da kommt:

[Pascal Fehler] Unit2.pas(31): E2034 Zu viele Parameter
[Pascal Fataler Fehler] Project2.dpr(5): F2063 Verwendete Unit 'Unit2.pas' kann nicht compiliert werden

Genau wie vorher
  Mit Zitat antworten Zitat
tr909

Registriert seit: 5. Nov 2004
193 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Anfänger Frage: Wie funktionert das nochmal mit Randomiz

  Alt 27. Jan 2009, 17:23
Random erwartet als Parameter ein Integer (siehe Hilfe)

function Random(const ARange: Integer): Integer; overload;
In Delphi gibt Random eine Zufallszahl im Bereich 0 <= X < Range zurück. Wird der Parameter Range nicht angegeben, liefert Random einen Real-Wert im Bereich
0 <= X < 1.

Zudem solltest du Randomize nur einmal aufrufen. (z.B. im FormCreate)

Gruß
tr909

*edit*

achja, und natülrich muß es r := random(); heißen
Die Variable der du einen wert zuweisen möchtest steht links.
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#5

Re: Anfänger Frage: Wie funktionert das nochmal mit Randomiz

  Alt 27. Jan 2009, 17:23
Die Fehlermeldung sagts doch schon: Du hast bei Random zu viele Parameter angegeben.

AFAIR erwartet Random einen (Zahl zwischen 0 und Parameter) oder keinen Parameter (Zahl zwischen 0 und 1).

Das findest du abe rmit Sicherheit in deiner Delphi-Hilfe
  Mit Zitat antworten Zitat
Z4ppy

Registriert seit: 25. Apr 2008
269 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: Anfänger Frage: Wie funktionert das nochmal mit Randomiz

  Alt 27. Jan 2009, 17:25
Random (1,16777216):=r So wies ausschaut, willst du eine Zufallszahl zwischen 1 und 16777216 erzeugen...
Random ist aber so definiert:
function Random([Range:integer]);
Du gibst also einen Parameter zu viel an
So dürfte es funktionieren:
r:=floor(Random()*1677215)+1; MfG Z4ppy
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#7

Re: Anfänger Frage: Wie funktionert das nochmal mit Randomiz

  Alt 27. Jan 2009, 17:26
Zitat von Z4ppy:
r:=floor(Random()*1677215)+1;
Oder auch einfach
r := random(1677215) + 1
  Mit Zitat antworten Zitat
MiKeNNtKoiNer

Registriert seit: 27. Jan 2009
18 Beiträge
 
#8

Re: Anfänger Frage: Wie funktionert das nochmal mit Randomiz

  Alt 27. Jan 2009, 17:28
ok danke funktioniert jetzt
  Mit Zitat antworten Zitat
Z4ppy

Registriert seit: 25. Apr 2008
269 Beiträge
 
Delphi 7 Enterprise
 
#9

Re: Anfänger Frage: Wie funktionert das nochmal mit Randomiz

  Alt 27. Jan 2009, 17:34
Zitat von Meflin:
Zitat von Z4ppy:
r:=floor(Random()*1677215)+1;
Oder auch einfach
r := random(1677215) + 1
Random erzeugt doch eine Realzahl, oder irre ich mich da? Da aber eine Integer erzeugt werden soll, muss man doch noch floor, round oder ceil machen

MfG Z4ppy
  Mit Zitat antworten Zitat
MiKeNNtKoiNer

Registriert seit: 27. Jan 2009
18 Beiträge
 
#10

Re: Anfänger Frage: Wie funktionert das nochmal mit Randomiz

  Alt 27. Jan 2009, 17:37
ok leute ich hab jetzt doch noch ne ziemlich banale frage :

wie krieg ich das edit feld größer ich kanns zwar in die länge ziehen aber nich nach unten vergrößern wenn ich dann starte is es immer standard hoch
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 06:26 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