AGB  ·  Datenschutz  ·  Impressum  







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

Das Bildchen in einem Message-Dialog ändern

Ein Thema von isocam · begonnen am 22. Mai 2004 · letzter Beitrag vom 22. Mai 2004
Antwort Antwort
Seite 1 von 2  1 2      
isocam

Registriert seit: 22. Mai 2004
Ort: Berlin
16 Beiträge
 
Delphi 6 Personal
 
#1

Das Bildchen in einem Message-Dialog ändern

  Alt 22. Mai 2004, 19:53
Hallo,

Ich möchte mir eigene Dialogboxen basteln.
Man kann ja über
Delphi-Quellcode:
CreateMessageDialog(Nachricht,Dialogstil,Buttons) do try
...
finally

...
end;
die Dialogbox ändern und mit bspw.
(Components[x] as TButton).Caption:='neue Beschriftung'; die Eigenschaften bestimmter Komponenten innerhalb der Dialogbox ändern (hier Druckknopf verändern).

Aber wie kann ich das Bildchen, das normalerweise die Art der Nachricht anzeigt, mit Eigenen austauschen?
(Components[x] as TImage).picture.loadfromfile('eigenes Bild.bmp'); Das hier geht nicht.
Wäre nett, wenn mir jemand weiterhelfen könnte.
Alex
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#2

Re: Das Bildchen in einem Message-Dialog ändern

  Alt 22. Mai 2004, 19:59
Moin und ein herzliches Willkommen in der Delphi-PRAXIS

Du kannst natürlich der Property Picture keinen String übergeben.

TPicture hat aber die Methode LoadFromFile:

  (Components[x] as TImage).Picture.LoadFromFile('eigenes Bild.bmp');
  Mit Zitat antworten Zitat
isocam

Registriert seit: 22. Mai 2004
Ort: Berlin
16 Beiträge
 
Delphi 6 Personal
 
#3

Re: Das Bildchen in einem Message-Dialog ändern

  Alt 22. Mai 2004, 20:05
ups, da habe ich mich verschrieben. Ich meinte natürlich Loadfromfile. Ich habs oben korrigiert.
Der Compiler erkennt dieses TImage nicht an.
Aber wie kann ich das Bild austauschen?
Alex
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#4

Re: Das Bildchen in einem Message-Dialog ändern

  Alt 22. Mai 2004, 20:07

Ok, dann so (die 2. Möglichkeit eines Typecastings):
TImage(Components[x]).Picture.LoadFromFile('eigenes Bild.bmp');
  Mit Zitat antworten Zitat
isocam

Registriert seit: 22. Mai 2004
Ort: Berlin
16 Beiträge
 
Delphi 6 Personal
 
#5

Re: Das Bildchen in einem Message-Dialog ändern

  Alt 22. Mai 2004, 20:11
Dann sagt der Compiler: -"Undeclared Identifier: TImage"
- Missing Operator or Semicolon"
Alex
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#6

Re: Das Bildchen in einem Message-Dialog ändern

  Alt 22. Mai 2004, 20:17
Hast du "ExtCtrls" in der Uses-Clause deiner Unit? Darin befindet sich die Klasse TImage.
  Mit Zitat antworten Zitat
Thorben86

Registriert seit: 20. Nov 2003
Ort: Brühl
365 Beiträge
 
Delphi 2005 Personal
 
#7

Re: Das Bildchen in einem Message-Dialog ändern

  Alt 22. Mai 2004, 20:24
Also ich bin auch gerade dabei nen eigenen MSG-Dialog zu basteln, mein Problem ist bisher nur, dass ich dem klar machen muss, dass es überhaupt ein TImage vorhanden ist, dem ich ein Bild zuweisen kann.
  Mit Zitat antworten Zitat
pizza

Registriert seit: 30. Apr 2004
30 Beiträge
 
#8

Re: Das Bildchen in einem Message-Dialog ändern

  Alt 22. Mai 2004, 20:29
sowit ich weiß geht das so:
- in die uses 'ExtCtrls' machen
- in die vars: Image: TImage;
- Image.Picture.LoadFromFile('eigenes Bild.bmp');

(habs net ausprobiert, aber müsste so eigentlich gehen..)

mfg rob
  Mit Zitat antworten Zitat
Thorben86

Registriert seit: 20. Nov 2003
Ort: Brühl
365 Beiträge
 
Delphi 2005 Personal
 
#9

Re: Das Bildchen in einem Message-Dialog ändern

  Alt 22. Mai 2004, 20:46
@pizza: theoretisch geht dass so, nur muss man bei nem Msg-Dialog glaube ich irgendeine von den kopmonenten als TImage definieren, wenn man dass an den originalen Code "anhängt"
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#10

Re: Das Bildchen in einem Message-Dialog ändern

  Alt 22. Mai 2004, 20:57
Einfach in einer Schleife durch alle Componenten des Dialogs laufen.
Wenn eine ein TImage ist, bekommt sie das da verpasst.
(Das hatte isocam schon richtig )
Delphi-Quellcode:
var
  i : Integer;
begin
  with CreateMessageDialog('Miep', mtError, [mbOK, mbRetry]) do
  try
    for i := 0 to pred(ComponentCount) do
      if Components[i] is TImage then
        with TImage(Components[i]) do
        begin
          Picture.LoadFromFile('D:\Dev\CommonFiles\Borland Shared\Images\GlyFX\Large\stop24.bmp');
          Transparent := True;
          Break;
        end;
    ShowModal;
  finally
    Free;
  end;
end;
  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 17:53 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