AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Tpanel+Tspeedbutton+Imagelist zu einer Komponente machen!
Thema durchsuchen
Ansicht
Themen-Optionen

Tpanel+Tspeedbutton+Imagelist zu einer Komponente machen!

Ein Thema von snow · begonnen am 11. Dez 2007 · letzter Beitrag vom 11. Dez 2007
Antwort Antwort
Seite 1 von 2  1 2      
snow

Registriert seit: 28. Jun 2007
277 Beiträge
 
#1

Tpanel+Tspeedbutton+Imagelist zu einer Komponente machen!

  Alt 11. Dez 2007, 12:12
Hallo

Ich hab folgendes vor.

ICh will Tspeedbuttons auf einem Tpanel haben. Ich will die Groupindex verändern und das Bild des TSpedbutton soll aus einer TImagelist geladen werden.

Kann man in DelphiKomponenten Zusammenfassen?

Ich hätte am liebsten eine komponente, die ich wie ein panel auf die Form ziehe und dann die speedbuttons erstelle. Diese sollen dann auf der Form verteilbar sein und dann möchte ich den Speedbuttons Bilder aus einer Imagelist zuweisen.

Da ich keine Erfahrung mit Komponeneten habe würde ich gern euere Meinung erfragen, Wie viel Aufwand das ist und wie ich anfangen soll?

Gruß snow
  Mit Zitat antworten Zitat
Benutzerbild von Kroko1999
Kroko1999

Registriert seit: 21. Apr 2005
Ort: Spremberg
455 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Tpanel+Tspeedbutton+Imagelist zu einer Komponente machen

  Alt 11. Dez 2007, 14:39
Lesen bilder, siehe dort!
Da sprach der Stumme zum Blinden: "Du wirst sehen ..."
oder
Wer lesen kann, ist klar im Vorteil!
  Mit Zitat antworten Zitat
snow

Registriert seit: 28. Jun 2007
277 Beiträge
 
#3

Re: Tpanel+Tspeedbutton+Imagelist zu einer Komponente machen

  Alt 11. Dez 2007, 14:49
Kenn ich schon!

Hab auch schon das Grundgerüst für einen NeuenSpeedbutton

Ich hab ihn vom TSpeedbutton abgeleitet und die Propertys

Imageindex : Integer;
Images : TImagelist;

hinzugefügt.

So das klappt, doch wie kann ich jetzt auf eine änderung des ImageIndex reagieren.(Der soll dann in der Imagelist nach schlagen und die Bitmap holen, und sie im Glyph abspeichern.

Wie das unter normalen umständen aussieht weis ich. Aber wie kann ich delphi sagen, das es auf änderungen reagieren soll(am liebsten ohne Timer).

Gruß snow
  Mit Zitat antworten Zitat
Benutzerbild von Kroko1999
Kroko1999

Registriert seit: 21. Apr 2005
Ort: Spremberg
455 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Tpanel+Tspeedbutton+Imagelist zu einer Komponente machen

  Alt 11. Dez 2007, 15:54
property ImageIndex: Integer read FImageindex write SetImage; property + F1
ImageList.GetBitmap + F1
Da sprach der Stumme zum Blinden: "Du wirst sehen ..."
oder
Wer lesen kann, ist klar im Vorteil!
  Mit Zitat antworten Zitat
snow

Registriert seit: 28. Jun 2007
277 Beiträge
 
#5

Re: Tpanel+Tspeedbutton+Imagelist zu einer Komponente machen

  Alt 11. Dez 2007, 16:00
Was ist Setimage?

ne procedure?

Gruß snow
  Mit Zitat antworten Zitat
Benutzerbild von Kroko1999
Kroko1999

Registriert seit: 21. Apr 2005
Ort: Spremberg
455 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: Tpanel+Tspeedbutton+Imagelist zu einer Komponente machen

  Alt 11. Dez 2007, 16:01
Zitat von snow:
Was ist Setimage?

ne procedure?

Gruß snow
ja, wie wäre es mit ein paar Grundlagen in Delphi und OOP,
Da sprach der Stumme zum Blinden: "Du wirst sehen ..."
oder
Wer lesen kann, ist klar im Vorteil!
  Mit Zitat antworten Zitat
snow

Registriert seit: 28. Jun 2007
277 Beiträge
 
#7

Re: Tpanel+Tspeedbutton+Imagelist zu einer Komponente machen

  Alt 11. Dez 2007, 16:42
Das hab ich jetzt hinbekommen. ICh hab jetzt eine procedure die auf das schreiben auf Imageindex reagiert.

Doch wenn ich in der das hier amchen lasse, dann

Delphi-Quellcode:
begin
//
Try
tmpbmp :=Tbitmap.create;
FImages.GetBitmap(1,tmpbmp);
tmpbmp.Free;
except
end;
bekomm ich ne zugriffsverletzung beim lesen von

00000000000C.

was nun? In der Imagelist gibt es auch ein image mit dem index von 1.
Gruß Snow
  Mit Zitat antworten Zitat
Benutzerbild von Kroko1999
Kroko1999

Registriert seit: 21. Apr 2005
Ort: Spremberg
455 Beiträge
 
Turbo Delphi für Win32
 
#8

Re: Tpanel+Tspeedbutton+Imagelist zu einer Komponente machen

  Alt 11. Dez 2007, 16:54
(a) Ist FImages denn createt?
(b) Es geht auch ohne tmpBmp:
Delphi-Quellcode:
begin
  Try
    FImages.GetBitmap(1,SpeedButton.Glyph);
  except
  end;
end;
Da sprach der Stumme zum Blinden: "Du wirst sehen ..."
oder
Wer lesen kann, ist klar im Vorteil!
  Mit Zitat antworten Zitat
snow

Registriert seit: 28. Jun 2007
277 Beiträge
 
#9

Re: Tpanel+Tspeedbutton+Imagelist zu einer Komponente machen

  Alt 11. Dez 2007, 16:57
FImages ist mit der Property Images verknüpft, welche eine Timagelist enthält.

Diese ist im OI ausgewählt und befindet sich auf der Form.

Gruß snow
  Mit Zitat antworten Zitat
Benutzerbild von Kroko1999
Kroko1999

Registriert seit: 21. Apr 2005
Ort: Spremberg
455 Beiträge
 
Turbo Delphi für Win32
 
#10

Re: Tpanel+Tspeedbutton+Imagelist zu einer Komponente machen

  Alt 11. Dez 2007, 17:36
kommt der Fehler auch, wenn Du meine Variante, also direkt über Glyph, auch?
Da sprach der Stumme zum Blinden: "Du wirst sehen ..."
oder
Wer lesen kann, ist klar im Vorteil!
  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 20:42 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