AGB  ·  Datenschutz  ·  Impressum  







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

Grafiken

Ein Thema von MiniMax · begonnen am 27. Dez 2009 · letzter Beitrag vom 31. Dez 2009
Antwort Antwort
Seite 2 von 3     12 3      
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#11

Re: Grafiken

  Alt 27. Dez 2009, 19:07
Zitat von markus5766h:
Hallo,

anbei 'mal ein Demo mit VU-Metern,
der Zeiger wird auf dem Canvas gezeichnet.

vielleicht hilft's
Nett, Danke
Martin
MFG Caleb
TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade)
  Mit Zitat antworten Zitat
Benutzerbild von markus5766h
markus5766h

Registriert seit: 5. Mär 2009
Ort: Hamburg
569 Beiträge
 
Delphi XE8 Professional
 
#12

Re: Grafiken

  Alt 27. Dez 2009, 19:40
Hallo,

@ lbccaleb :

hab' noch eins, keine lineare Teilung, Positionen als Konstanten gespeichert,
0..100
Angehängte Dateien
Dateityp: rar vu11_206.rar (341,4 KB, 23x aufgerufen)
Markus H.
  Mit Zitat antworten Zitat
MiniMax

Registriert seit: 15. Dez 2009
Ort: Bremen
193 Beiträge
 
Delphi 2009 Architect
 
#13

Re: Grafiken

  Alt 28. Dez 2009, 12:29
Danke an euch alle!
Ich werde mir mal die Beispiele anschauen und wenn ich Fragen habe, werde ich sie hier Posten!

Ich wollte einfach nur den Zeiger Zeichnen und den Rest per Image Einladen! Kann ich dann den/die gleichen Code/s nehmen?
Gruß
MiniMax
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#14

Re: Grafiken

  Alt 28. Dez 2009, 12:45
Naja du musst das ganze event. schon deinen Bedürfnissen anpassen, aber hier wurden ja gute Bsp. gepostet mit welchen die Umsetzung für dich kein Problem sein sollte.
Martin
MFG Caleb
TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade)
  Mit Zitat antworten Zitat
Benutzerbild von patti
patti

Registriert seit: 20. Okt 2004
Ort: Mittelfranken
665 Beiträge
 
Turbo Delphi für Win32
 
#15

Re: Grafiken

  Alt 28. Dez 2009, 12:45
Zitat von MiniMax:
Ich wollte einfach nur den Zeiger Zeichnen und den Rest per Image Einladen! Kann ich dann den/die gleichen Code/s nehmen?
Das ist generell schon möglich. Ich kenne jetzt den Quelltext und die Arbeitsweise von markus5766h nicht, aber so wie ich es gemacht habe (siehe oben) musst du dir den Hintergrund erstmal nur in ein Bitmap laden, welches am besten genauso groß ist, wie deine Zeichenfläche. Laden kannst du ein Bild per

Bitmap.LoadFromFile({...}); aus einer Datei auf der Festplatte. Des Weiteren könntest du die Grafik aus einer Ressource laden oder per TImage-Komponente fest in dein Programm mit einbinden.
In der Zeichenroutine kannst du dieses Hintergrund-Bitmap dann per

Canvas.Draw({..}); auf die Zeichenfläche malen. Anschließend musst du dann natürlich noch den Zeiger malen. Lösungen dafür hast du ja bereits bekommen.

mfg

Edit: Der Rote Kasten macht Weihnachtsurlaub?
Patrick Kreutzer
[Informatik-Student im 4. Semester]
http://www.patti-k.de/
  Mit Zitat antworten Zitat
MiniMax

Registriert seit: 15. Dez 2009
Ort: Bremen
193 Beiträge
 
Delphi 2009 Architect
 
#16

Re: Grafiken

  Alt 28. Dez 2009, 14:02
Hi,
ich danke euch rechtherzlich! Ich werde es jetzt mal ausprobieren und bei Fragen - Post hier im Forum!

Falls ich nicht noch was bis Silvester schreibe, wünsche ich euch einen

Guten Rutsch ins Neue Jahr, und vorallem Gesundheit und Erfolg!
Gruß
MiniMax
  Mit Zitat antworten Zitat
Benutzerbild von markus5766h
markus5766h

Registriert seit: 5. Mär 2009
Ort: Hamburg
569 Beiträge
 
Delphi XE8 Professional
 
#17

Re: Grafiken

  Alt 28. Dez 2009, 18:40
Zitat von patti:
... und die Arbeitsweise von markus5766h nicht
hab's nicht anders gemacht :
Hintergrund ist eine Bitmap (in einem TImage),
der Zeiger wird entsprechend der Umrechnung / Skalierung
auf dem Canvas gezeichnet.
Markus H.
  Mit Zitat antworten Zitat
Benutzerbild von patti
patti

Registriert seit: 20. Okt 2004
Ort: Mittelfranken
665 Beiträge
 
Turbo Delphi für Win32
 
#18

Re: Grafiken

  Alt 29. Dez 2009, 17:06
Ok, war mir bloß nicht ganz sicher, weil ich deinen Beitrag mehr oder weniger nur überflogen hatte und mich das oldPixels-Array etwas verwundert hat
Patrick Kreutzer
[Informatik-Student im 4. Semester]
http://www.patti-k.de/
  Mit Zitat antworten Zitat
MiniMax

Registriert seit: 15. Dez 2009
Ort: Bremen
193 Beiträge
 
Delphi 2009 Architect
 
#19

Re: Grafiken

  Alt 30. Dez 2009, 13:14
Hallo,
@Patti: Wie meinst du das mit Bitmap.LoadFromFile? Und wie soll ich das Bild dann aufs Canvas Malen?
Kannst du nen Beispiel Schreiben? (Bitmap: test.bmp/ Canvasfläche TPaintbox oder Timage)??? Ich blick da net durch
Vielen Dank im Voraus
Gruß
MiniMax
  Mit Zitat antworten Zitat
Benutzerbild von patti
patti

Registriert seit: 20. Okt 2004
Ort: Mittelfranken
665 Beiträge
 
Turbo Delphi für Win32
 
#20

Re: Grafiken

  Alt 30. Dez 2009, 13:48
Das ist kein Problem. Eigentlich hatte ich dir oben schon einpaar Stichworte genannt, die dir dank Hilfe und Suche schonmal weiterhelfen hätten sollen, aber gut: Hier ist mal eine etwas ausführlichere "Anleitung";

Zunächst deklarierts du im private-Bereich deines Formulars eine Instanz des Typs TBitmap:

Delphi-Quellcode:
  private
    { Private-Deklarationen }
    HintergrundBild : TBitmap;
    //..
Anschließend musst du das Bitmap noch im OnCreate-Ereignis deines Formulars erzeugen und das entsprechende Bild von der Festplatte laden:

Delphi-Quellcode:
var P : TFileName;
begin
     //--
     Self.DoubleBuffered := true; // damit es nicht so flackert
     //
     HintergrundBild := TBitmap.Create;
     //
     p := IncludeTrailingPathDelimiter(ExtractFilePath(Application.ExeName)) + 'hintergrund.bmp';
     //
     if FileExists(p) then HintergrundBild.LoadFromFile(p)
     else MessageDLG('Bild-Datei "hintergrund.bmp" im Programm-Ordner nicht gefunden!',mtError,[mbOK],0);
Außerdem solltest du das TBitmap im OnDestroy deines Formulars wieder freigeben:

HintergrundBild.Free; Jetzt musst du das Bild in der Zeichenroutine nur noch auf die Canvas zeichnen, etwa so:

PaintBox1.Canvas.Draw(0,0,HintergrundBild); Und dann natürlich noch den Zeiger, aber das hatten wir ja oben schon.
Das Bitmap sollte genauso groß sein wie die PaintBox, alles andere macht kaum Sinn

Wenn du das Programm weitergeben willst, musst du auch immer die Datei, welche das Hintergrundbild beinhaltet, mitliefern und sie muss sich im Ordner der EXE-Datei befinden. Dies könntest du umgehen, indem du das Bild in eine unsichtbare TImage-Komponente lädst oder aus einer Ressource holst. Wenn du Fragen hast, dann kannst du in der DP mal nach diesen Stichwörtern suchen oder hier einfach noch mal nachfragen.

Hab das Programm inklusive Bild-Datei und Quelltext mal in den Anhang.

Viel Spaß
Angehängte Dateien
Dateityp: zip vumeter2_751.zip (230,6 KB, 27x aufgerufen)
Patrick Kreutzer
[Informatik-Student im 4. Semester]
http://www.patti-k.de/
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


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 23:16 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