Autor Beitrag
FiceGoesDelphi
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 485

Win XP Prof
Delphi 2006
BeitragVerfasst: Do 05.07.07 15:10 
Hallöchen ;)

Ich hoffe ich habe das richtige Thema getroffen *gg*
Ich würde gerne meine JvDice Komponenten rotieren lassen.
Soweit so gut.. es gibt nen "Rotate (boolean)" und nen "AutoStopInterval (Cardinal)"
Aber aus irgendwelchen Gründen, stürzt das Programm IMMER ab, wenn ich ein Rotieren stopen will! :oops:

ausblenden Delphi-Quelltext
1:
2:
       jvDice1.AutoStopInterval := 10;
       JvDice1.Rotate := True;


So zum Bleistift ;)
Warum das so ist, weiß ich nicht! Wenn ich in dem Objektinspektor "Rotate" auf "True" setzen will,
stürzt mir sogar Delphi ab!
Kann mir irgendeiner helfen :?!?:

LG,

_________________
<(^^<) <(^^)> (>^^)>
===================
ZeitGeist87
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1593
Erhaltene Danke: 20

Win95-Win10
Delphi 10 Seattle, Rad Studio 2007, Delphi 7 Prof., C++, WSH, Turbo Pascal, PHP, Delphi X2
BeitragVerfasst: Do 05.07.07 15:47 
Ähm :)

Probiers mal JvDice.Rotate:= false;

LG
Stefan

_________________
Wer Provokationen, Ironie, Sarkasmus oder Zynismus herauslesen kann soll sie ignorieren um den Inhalt meiner Beiträge ungetrübt erfassen zu können.
FiceGoesDelphi Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 485

Win XP Prof
Delphi 2006
BeitragVerfasst: Do 05.07.07 15:49 
Könnte ich vllt schon ausprobiert haben oder? ;)

.. Der Nächste bitte ..

:tongue:

_________________
<(^^<) <(^^)> (>^^)>
===================
ZeitGeist87
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1593
Erhaltene Danke: 20

Win95-Win10
Delphi 10 Seattle, Rad Studio 2007, Delphi 7 Prof., C++, WSH, Turbo Pascal, PHP, Delphi X2
BeitragVerfasst: Do 05.07.07 15:51 
Start mal Rechner neu :)

Ich hatte diesen Würfel auch schon, hatte allerdings keine Probleme damit..

_________________
Wer Provokationen, Ironie, Sarkasmus oder Zynismus herauslesen kann soll sie ignorieren um den Inhalt meiner Beiträge ungetrübt erfassen zu können.
FiceGoesDelphi Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 485

Win XP Prof
Delphi 2006
BeitragVerfasst: Do 05.07.07 15:52 
Wie wärs, wenn du mir dann mal den Code, welchen du damals benutzt hast, zukommen lässt? ;)
Auf Buttonclick soll der bzw die 4 Würfel rotiert werden.

_________________
<(^^<) <(^^)> (>^^)>
===================
ZeitGeist87
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1593
Erhaltene Danke: 20

Win95-Win10
Delphi 10 Seattle, Rad Studio 2007, Delphi 7 Prof., C++, WSH, Turbo Pascal, PHP, Delphi X2
BeitragVerfasst: Do 05.07.07 15:57 
Wir verwenden in der Arbeit keinerlei Fremdkomponenten :)
entwickeln alles selber...

Du könntest aber deinen Monitor rotieren lassen..geht auch mit delphi :P

Hmm..drück doch mal F1..oder geht das nicht?
Ich mein deine Tastatur war schon teuer genug.. :wink:

LG
Stefan

_________________
Wer Provokationen, Ironie, Sarkasmus oder Zynismus herauslesen kann soll sie ignorieren um den Inhalt meiner Beiträge ungetrübt erfassen zu können.
FiceGoesDelphi Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 485

Win XP Prof
Delphi 2006
BeitragVerfasst: Do 05.07.07 16:01 
Natürlich kann ich F1 drücken ;)
Ich kann sogar F2 drücken! Und jetzt kommts .... F4 funktioniert auch :P

1. Meine Tasta ist zuhause zum zocken! Nicht auf der Arbeit :P
2. JV-Komponenten sind in der OH glaube ich nicht zu finden oder? bzw JvDice aufjedenfall nicht!
3. HAHAHA -.-

_________________
<(^^<) <(^^)> (>^^)>
===================
ZeitGeist87
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1593
Erhaltene Danke: 20

Win95-Win10
Delphi 10 Seattle, Rad Studio 2007, Delphi 7 Prof., C++, WSH, Turbo Pascal, PHP, Delphi X2
BeitragVerfasst: Do 05.07.07 16:07 
user profile iconFiceGoesDelphi hat folgendes geschrieben:
Natürlich kann ich F1 drücken ;)
Ich kann sogar F2 drücken! Und jetzt kommts .... F4 funktioniert auch :P


F3 haste nicht oda :)

Hmm..dachte immer, dass die auch dokumentiert sind..
Aber warum um alles in der Welt, benötigst du in der ARBEIT einen Würfel?

Ist euch in der Bank so langweilig?
Oder müssen die Kunden, die einen Kredit haben wollen würfeln? :P

Naja..ich schau in ner Stunde mal daheim nach ok?

_________________
Wer Provokationen, Ironie, Sarkasmus oder Zynismus herauslesen kann soll sie ignorieren um den Inhalt meiner Beiträge ungetrübt erfassen zu können.
FiceGoesDelphi Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 485

Win XP Prof
Delphi 2006
BeitragVerfasst: Do 05.07.07 16:09 
Ich habs :D

ausblenden Delphi-Quelltext
1:
       JvDice1.Throw;					


War eigentlich ganz einfach oder? :tongue:

kann somit Closed werden :)
Thx an alle die mir nicht helfen konnten :rofl:

_________________
<(^^<) <(^^)> (>^^)>
===================
ZeitGeist87
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1593
Erhaltene Danke: 20

Win95-Win10
Delphi 10 Seattle, Rad Studio 2007, Delphi 7 Prof., C++, WSH, Turbo Pascal, PHP, Delphi X2
BeitragVerfasst: Do 05.07.07 16:13 
user profile iconFiceGoesDelphi hat folgendes geschrieben:
Ich habs :D

ausblenden Delphi-Quelltext
1:
       JvDice1.Throw;					


War eigentlich ganz einfach oder? :tongue:

kann somit Closed werden :)
Thx an alle die mir nicht helfen konnten :rofl:


Hast du das jetzt alles allein rausgefunden?
Björn!
Bin stolz :P

_________________
Wer Provokationen, Ironie, Sarkasmus oder Zynismus herauslesen kann soll sie ignorieren um den Inhalt meiner Beiträge ungetrübt erfassen zu können.
FiceGoesDelphi Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 485

Win XP Prof
Delphi 2006
BeitragVerfasst: Mo 09.07.07 08:21 
Ich hab nen neues/altes Problem...

Ich möchte nun vor dem "Throw" den Würfel rotieren lassen!
Ich habe nun folgenden Code geschrieben:

ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
procedure TForm1.BitBtn1Click(Sender: TObject);
var
   Range : 1111..9999;
   Text : Integer;
 begin
     Range := 9999;
     Randomize;
     Text:= Random(Range);
     if Text < 1000 then
     begin
       Text := Text + 1000;
       Edit1.Text := IntToStr(Text);
       JvDice1.Rotate := True;
       JvDice2.Rotate := True;
       JvDice3.Rotate := True;
       JvDice4.Rotate := True;
       Timer1.Enabled:= true;
     end
     else
     begin
       Edit1.Text := IntToStr(Text);
       JvDice1.Rotate := True;
       JvDice2.Rotate := True;
       JvDice3.Rotate := True;
       JvDice4.Rotate := True;
       Timer1.Enabled:= true;
     end;
   end;

procedure TForm1.FormShow(Sender: TObject);
var
   Range : 1111..9999;
   Text : Integer;
 begin
     Range := 9999;
     Randomize;
     Text:= Random(Range);
     if Text < 1000 then
     begin
      Text := Text + 1000;
      Edit1.Text := IntToStr(Text);
     end
     else
       JvDice1.Throw;
       JvDice2.Throw;
       JvDice3.Throw;
       JvDice4.Throw;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  Timer1.Enabled := false;
  JvDice1.rotate := false;
  JvDice2.rotate := false;
  JvDice3.rotate := false;
  JvDice4.rotate := false;
end;


Ich weiß... ich könnte nun alles wesentlich kürzer fassen..
Ich hab nen bestehenden Code nehmen sollen und ihn einfach auf Delphi2006 umschreiben sollen.
Mein Problem ist auch einfach nur, dass das Programm zwar nach Buttonclick wunderbar die Würfel rotieren lässt und dann auch wieder anhält, ABER dann auch abstürzt!
Ich verzweifle langsam :(
Liegts an fehlerhaften JV-Kompos!?
Oder habe ich mir da selber eine Grube gegraben?!

LG,

_________________
<(^^<) <(^^)> (>^^)>
===================
ZeitGeist87
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1593
Erhaltene Danke: 20

Win95-Win10
Delphi 10 Seattle, Rad Studio 2007, Delphi 7 Prof., C++, WSH, Turbo Pascal, PHP, Delphi X2
BeitragVerfasst: Mo 09.07.07 14:09 
user profile iconFiceGoesDelphi hat folgendes geschrieben:
Ich hab nen neues/altes Problem...

Ich möchte nun vor dem "Throw" den Würfel rotieren lassen!
Ich habe nun folgenden Code geschrieben:

ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
procedure TForm1.BitBtn1Click(Sender: TObject);
var
   Range : 1111..9999;
   Text : Integer;
 begin
     Range := 9999;
     Randomize;
     Text:= Random(Range);
     if Text < 1000 then
     begin
       Text := Text + 1000;
       Edit1.Text := IntToStr(Text);
       JvDice1.Rotate := True;
       JvDice2.Rotate := True;
       JvDice3.Rotate := True;
       JvDice4.Rotate := True;
       Timer1.Enabled:= true;
     end
     else
     begin
       Edit1.Text := IntToStr(Text);
       JvDice1.Rotate := True;
       JvDice2.Rotate := True;
       JvDice3.Rotate := True;
       JvDice4.Rotate := True;
       Timer1.Enabled:= true;
     end;
   end;

procedure TForm1.FormShow(Sender: TObject);
var
   Range : 1111..9999;
   Text : Integer;
 begin
     Range := 9999;
     Randomize;
     Text:= Random(Range);
     if Text < 1000 then
     begin
      Text := Text + 1000;
      Edit1.Text := IntToStr(Text);
     end
     else
     begin
       JvDice1.Throw;
       JvDice2.Throw;
       JvDice3.Throw;
       JvDice4.Throw;
     end;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  Timer1.Enabled := false;
  JvDice1.rotate := false;
  JvDice2.rotate := false;
  JvDice3.rotate := false;
  JvDice4.rotate := false;
end;


Ich weiß... ich könnte nun alles wesentlich kürzer fassen..
Ich hab nen bestehenden Code nehmen sollen und ihn einfach auf Delphi2006 umschreiben sollen.
Mein Problem ist auch einfach nur, dass das Programm zwar nach Buttonclick wunderbar die Würfel rotieren lässt und dann auch wieder anhält, ABER dann auch abstürzt!
Ich verzweifle langsam :(
Liegts an fehlerhaften JV-Kompos!?
Oder habe ich mir da selber eine Grube gegraben?!

LG,


Was bewirkt dieses .Throw?

_________________
Wer Provokationen, Ironie, Sarkasmus oder Zynismus herauslesen kann soll sie ignorieren um den Inhalt meiner Beiträge ungetrübt erfassen zu können.
FiceGoesDelphi Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 485

Win XP Prof
Delphi 2006
BeitragVerfasst: Mo 09.07.07 14:15 
.Throw bewirkt ein einfaches "verändern" der Augenanzahl des Würfels!
Ein .Rotate := True lässt den Würfel rotieren.
Durch den Timer lasse ich den Würfel kurz rotieren und stoppe ihn dann
kurze Zeit später wieder mit dem 2. Timer.
Das funktioniert auch soweit ganz gut!
Nur das Programm stürzt nach dem False ab...
Wenn ich im Objektinspektor den Wert auf True setze und danach wieder auf
False stürzt sogar Delphi komplett ab :(
Ich will doch nur den Würfel rotieren lassen bevor er mir eine neue
Augenzahl anzeigt!
*verzweifel*

_________________
<(^^<) <(^^)> (>^^)>
===================
ZeitGeist87
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1593
Erhaltene Danke: 20

Win95-Win10
Delphi 10 Seattle, Rad Studio 2007, Delphi 7 Prof., C++, WSH, Turbo Pascal, PHP, Delphi X2
BeitragVerfasst: Mo 09.07.07 14:33 
Wie wo 2. Timer?

Leg n neues Projekt an,
Tu einen Würfel drauf, und mach das Gleiche wie in dem Programm!

Spiel bissl rum..
Ich installier die Jedis dann mal und helf dir ausführlich

LG
Stefan

_________________
Wer Provokationen, Ironie, Sarkasmus oder Zynismus herauslesen kann soll sie ignorieren um den Inhalt meiner Beiträge ungetrübt erfassen zu können.
FiceGoesDelphi Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 485

Win XP Prof
Delphi 2006
BeitragVerfasst: Mo 09.07.07 14:37 
Achso.. sehe gerade ich hab vor dem weiteren rumspielen hier gepostet!
Dann kommt nachher mal der Atkuelle Code.
Hab überflüssiges rausgenommen und das Starten und Stoppen jeweils in unterschiedliche
Timer gepackt!
Funktioniert nicht!
Hab auch schon ein neues Formular genommen und 1 Würfel draufgepackt, dann 2 Button
(Starten und Stoppen) genommen und nur ein := True und := False genommen!
Stürzt trotzdem ab!
Bevor du das ausprobierst, speichere bitte alles ab, was wichtig ist!
Nicht das dir da was verloren geht!
Und danke für deine Hilfe ;)

_________________
<(^^<) <(^^)> (>^^)>
===================
ZeitGeist87
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1593
Erhaltene Danke: 20

Win95-Win10
Delphi 10 Seattle, Rad Studio 2007, Delphi 7 Prof., C++, WSH, Turbo Pascal, PHP, Delphi X2
BeitragVerfasst: Mo 09.07.07 14:39 
user profile iconFiceGoesDelphi hat folgendes geschrieben:

Bevor du das ausprobierst, speichere bitte alles ab, was wichtig ist!
Nicht das dir da was verloren geht!
Und danke für deine Hilfe ;)


Speichern ist mein 2. Vorname :wink:

Nichts zu danken Björn..das weißt du

_________________
Wer Provokationen, Ironie, Sarkasmus oder Zynismus herauslesen kann soll sie ignorieren um den Inhalt meiner Beiträge ungetrübt erfassen zu können.
Dunkel
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 682

Mac OS X Snow Leopard
Xcode 3.1
BeitragVerfasst: Mo 09.07.07 14:46 
Hallo!

Ich hab' mir das Problem mal angeguckt und die entsprechende Klasse grob überflogen.

Folgendes in JVDice.pas ändern, dann funktioniert zumindest das Rotieren aus dem Quellcode heraus; Zuweisung im OI lässt immer noch Delphi abstürzen.

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
procedure TJvDice.TimerFires(Sender: TObject);
var
  Now: Longint;
begin
  NewRandomValue;
  if not FRotate then
  begin
    FTimer.Enabled:= False;   /// neu hinzufügen !
//    FTimer.Free;            
//    FTimer := nil;
//    DoStop;
  end
  else
  if AutoStopInterval > 0 then
  begin
    Now := GetTickCount;
    if (Now - FTickCount >= Integer(AutoStopInterval)) or (Now < FTickCount) then
      Rotate := False;
  end;
end;

_________________
Ich streite einsam mich mit dieser Oberflächenwelt
Gutes sei ein löblich Brot von dem ich zehre - bis zum Tod [Das Ich - Im Ich]
FiceGoesDelphi Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 485

Win XP Prof
Delphi 2006
BeitragVerfasst: Mo 09.07.07 15:02 
Ein Dankeschön sollte es trotzdem immer mal wieder geben ;)

_________________
<(^^<) <(^^)> (>^^)>
===================
FiceGoesDelphi Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 485

Win XP Prof
Delphi 2006
BeitragVerfasst: Mo 09.07.07 15:03 
user profile iconDunkel hat folgendes geschrieben:
Hallo!

Ich hab' mir das Problem mal angeguckt und die entsprechende Klasse grob überflogen.

Folgendes in JVDice.pas ändern, dann funktioniert zumindest das Rotieren aus dem Quellcode heraus; Zuweisung im OI lässt immer noch Delphi abstürzen.

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
procedure TJvDice.TimerFires(Sender: TObject);
var
  Now: Longint;
begin
  NewRandomValue;
  if not FRotate then
  begin
    FTimer.Enabled:= False;   /// neu hinzufügen !
//    FTimer.Free;            
//    FTimer := nil;
//    DoStop;
  end
  else
  if AutoStopInterval > 0 then
  begin
    Now := GetTickCount;
    if (Now - FTickCount >= Integer(AutoStopInterval)) or (Now < FTickCount) then
      Rotate := False;
  end;
end;


Wow :) Dankeschön! :flehan:
Wenn das funktioniert könnte ich dich knutschen ;)

Edit: :dunce: :dance2: :dance: :party: :beer:
DANKE! Wenn du irgendwann mal lust und Zeit hast, kannst mir ja noch kurz erklären WARUM das jetzt so war *gg*

_________________
<(^^<) <(^^)> (>^^)>
===================
Dunkel
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 682

Mac OS X Snow Leopard
Xcode 3.1
BeitragVerfasst: Mo 09.07.07 15:09 
user profile iconFiceGoesDelphi hat folgendes geschrieben:

Wow :) Dankeschön! :flehan:
Wenn das funktioniert könnte ich dich knutschen ;)

:shock: Muss nicht unbedingt sein!!!! :wink:

user profile iconFiceGoesDelphi hat folgendes geschrieben:

Edit: :dunce: :dance2: :dance: :party: :beer:
DANKE! Wenn du irgendwann mal lust und Zeit hast, kannst mir ja noch kurz erklären WARUM das jetzt so war *gg*

Hmmm... ich finde die Komponente schlecht programmiert. Beim setzen von der Eigenschaft Rotate wird ein TTimer erstellt, beim Rücksetzen wird dieser, im OnTimer-Ereignis(!!!), wieder freigegeben. Da liegt wohl das Problem!
Wenn man den Timer aber nicht freet, sondern nur disabled, dann funzt es.

_________________
Ich streite einsam mich mit dieser Oberflächenwelt
Gutes sei ein löblich Brot von dem ich zehre - bis zum Tod [Das Ich - Im Ich]