| Autor |
Beitrag |
Waldkauz
      
Beiträge: 102
|
Verfasst: Sa 07.03.09 16:47
Hallo!
Ich bin neu hier im Forum, und werde mich, bei Gelegenheit, auch mal vorstellen.
Zur Zeit habe ich es aber relativ stressig, daher würde es mich freuen wenn ich zunächst mal meine Probleme hier lösen könnte.
Ich hab da nämlich zwei kleine Probleme - also, ich erstelle ein TImage (es muss ein TImage sein)(400x400) ;
1.)wenn man auf einen Button klickt, soll ein Kreis zufälliger Größe und zufälliger Position im Image erscheinen. Hauptsache es ist ein Kreis.
2.)Es gibt ein Editfeld, und der Text soll im TImage ausgegeben werden (nachdem auf Button2 geklickt wurde). Dass der Text im Image angezeigt wird, habe ich bereits geschafft, aber wie kann ich den Style, also Schriftgröße, - farbe etc. des Textes im Image (nicht im Editfeld) ändern?
Würde mich freuen, wenn ihr mir helfen könnt
Zuletzt bearbeitet von Waldkauz am Sa 07.03.09 21:39, insgesamt 1-mal bearbeitet
|
|
Xentar
      
Beiträge: 2077
Erhaltene Danke: 2
Win XP
Delphi 5 Ent., Delphi 2007 Prof
|
Verfasst: Sa 07.03.09 17:04
Wir machen hier keine Hausaufgaben für dich..
Wo genau kommst du nicht weiter?
Nebenbei: Eine Frage pro Thread.
Zufallszahl:
Im OnCreate des Formulars randomize; aufrufen. Danach, wenn du eine Zufallszahl brauchst:
Delphi-Quelltext 1:
| MyInteger := random(10); |
Kreis malen:
Habs grad nicht genau im Kopf, aber müsste sowas wie TCanvas.Circle(X, Y, Durchmesser); sein.
_________________ PROGRAMMER: A device for converting coffee into software.
|
|
jaenicke
      
Beiträge: 19346
Erhaltene Danke: 1754
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Sa 07.03.09 17:05
Hallo und  !
Du solltest die Regeln im Forum beachten. Eine Frage pro Thread! Sonst geht nur alles durcheinander.
Da das dein erster Beitrag ist, antworte ich einmal trotzdem. Waldkauz hat folgendes geschrieben : | | 1.)wenn man auf einen Button klickt, soll ein Kreis zufälliger Größe und zufälliger Position im Image erscheinen. Hauptsache es ist ein Kreis. |
Wie wäre es damit: Delphi-Quelltext 1:
| DeinImage.Canvas.Ellipse(10, 10, 100, 100); | Zu zufallszahlen hat Xentar ja schon etwas geschrieben.
Waldkauz hat folgendes geschrieben : | | aber wie kann ich den Style, also Schriftgröße, - farbe etc. des Textes im Image (nicht im Editfeld) ändern? |
Indem du vor deinem Canvas.TextOut die Schrift in Canvas.Font setzt. Die Syntaxergänzung und die Hilfe sollten dir zeigen, welche Möglichkeiten es da gibt.
Xentar hat folgendes geschrieben : | Kreis malen:
Habs grad nicht genau im Kopf, aber müsste sowas wie TCanvas.Circle(X, Y, Durchmesser); sein. |
Circle gibt es nicht, ein Kreis ist ja nur ein Spezialfall einer Ellipse.
|
|
Waldkauz 
      
Beiträge: 102
|
Verfasst: Sa 07.03.09 21:34
Sorry, wenn ich etwas forsch war.
Ich habe auch nicht verlangt, dass hier jemand die Hausaufgaben für mich macht.
Ich denke halt nur, dass stundenlanges herumprobieren nicht der Sinn einer Hausaufgabe ist, und dann wollte ich mich hier mal schlau machen.
Danke übrigens für eure Hilfe- das mit dem Font-Style klappt aber das mit der Zufallsposition verstehe ich nicht ganz.
Um meine Frage zu definieren:
Image1.Canvas.Ellipse(random(400),random(400),?,?);
Das mit der Zufallsposition klappt auch, nur die Zufallsgröße will nicht - es entstehen außerdem Ellipsen.
|
|
Xentar
      
Beiträge: 2077
Erhaltene Danke: 2
Win XP
Delphi 5 Ent., Delphi 2007 Prof
|
Verfasst: Sa 07.03.09 21:41
Du erzeugst
1. Zufallszahl für die X Position
2. Zufallszahl für die Y Position
3. Zufallszahl für die Größe (3. UND 4. Parameter von Ellipse), damit ist die Ellipse genau so hoch wie breit, und somit ein Kreis. Dafür musst du dir diese in einer Variablen speichern, sonst hast du zwei verschiedene Werte.
_________________ PROGRAMMER: A device for converting coffee into software.
|
|
jaenicke
      
Beiträge: 19346
Erhaltene Danke: 1754
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Sa 07.03.09 21:48
Am besten definiere dir ein Rechteck, das ist der Typ TRect. Auch den kannst du an Ellipse übergeben. Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8:
| var NewCircleRect: TRect; begin NewCircleRect.Left := NewCircleRect.Top := NewCircleRect.Right := NewCircleRect.Bottom := Image1.Canvas.Ellipse(NewCircleRect); | So kannst du bequem die Abmessung festlegen. 
|
|
Waldkauz 
      
Beiträge: 102
|
Verfasst: Sa 07.03.09 21:52
Xentar hat folgendes geschrieben : | Du erzeugst
1. Zufallszahl für die X Position
2. Zufallszahl für die Y Position
3. Zufallszahl für die Größe (3. UND 4. Parameter von Ellipse), damit ist die Ellipse genau so hoch wie breit, und somit ein Kreis. Dafür musst du dir diese in einer Variablen speichern, sonst hast du zwei verschiedene Werte. |
Jetzt geht's - vielen Dank!
|
|
|