AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Actions zur Laufzeit: Absturz bei ImageListzuweisung
Thema durchsuchen
Ansicht
Themen-Optionen

Actions zur Laufzeit: Absturz bei ImageListzuweisung

Ein Thema von Fingolfin · begonnen am 5. Mär 2004 · letzter Beitrag vom 9. Mär 2004
Antwort Antwort
Fingolfin

Registriert seit: 7. Okt 2003
62 Beiträge
 
#1

Actions zur Laufzeit: Absturz bei ImageListzuweisung

  Alt 5. Mär 2004, 02:14
Hallo, ich habe versucht folgenden Code aus der Code Library zu testen, um Actions zur Laufzeit zu erstellen:

Delphi-Quellcode:
var iItem:TActionClientItem;
    iAction:TAction;
begin
  iAction := TAction.Create(myActionManager); //Hier wird die Action für das Item erstellt
  iItem := myActionManager.ActionBars[0].Items.Add; //Und hier wird das Item zu dem Menü mit Index 0 geaddet.
  iAction.Caption := 'Mein Item'; //Hier wird dem Item die Eigenschaft Caption zugewiesen.
  iItem.Action := iAction; //Hier wird dem Item seine Action zugewiesen.
end;
Das funktioniert an sich wunderbar. Jetzt habe ich aber dem Actionmanager noch eine ImageList hinzugefügt und versucht per:

  iAction.ImageIndex:=0; den jeweiligen ImageIndex zuzuweisen.
Dabei bekomme ich allerdings eine EAccessViolation und habe keinen Plan, wo die herkommt. Er meckert bei folgendem Code in der ActnMan:

Delphi-Quellcode:
procedure TCustomActionControl.DrawGlyph(const Location: TPoint);
var
  ImageList: TCustomImageList;
  DrawEnabled: Boolean;
begin
  if not HasGlyph then exit;
  if Assigned(Action) then
    ImageList := ActionClient.Action.ActionList.Images //Hier scheint er abzuschmieren
  else
    ImageList := ActionClient.OwningCollection.ActionManager.Images;
  if not Assigned(ImageList) then exit;
  DrawEnabled := Enabled and (ActionClient.ImageIndex <> -1) or
    (csDesigning in ComponentState);
  ImageList.Draw(Canvas, Location.X, Location.Y, ActionClient.ImageIndex,
    dsTransparent, itImage, DrawEnabled);
end;
Hat vielleicht jemand eine Idee, was man da machen kann?

Ich nutze übrigens Delphi 7 Enterprise und habe das ActionUpdate von Steve Trefethen http://homepages.borland.com/strefethen/ benutzt.

Vielen Dank im voraus,

Fingolfin
  Mit Zitat antworten Zitat
Fingolfin

Registriert seit: 7. Okt 2003
62 Beiträge
 
#2

Re: Actions zur Laufzeit: Absturz bei ImageListzuweisung

  Alt 5. Mär 2004, 23:02
Ich habe mittlerweile das unoffizielle Update entfernt. Leider tritt der Fehler immer noch auf. Allerdings fiel mir auf, daß der Fehler auch nur auftritt, wenn Bilder in der ImageList sind, also scheint nur die Darstellung selbst Probleme zu machen.

Vielleicht hat ja noch jemand eine Idee.

Fingolfin
  Mit Zitat antworten Zitat
Benutzerbild von fylo
fylo

Registriert seit: 18. Feb 2004
Ort: Rostock
155 Beiträge
 
Delphi 7 Personal
 
#3

Re: Actions zur Laufzeit: Absturz bei ImageListzuweisung

  Alt 8. Mär 2004, 11:08
hi

versuch mal noch die imagelist des actionmanagers der action zuzuweisen
myAction.ActionList:=ActionManager;
have fun
fylo
  Mit Zitat antworten Zitat
Fingolfin

Registriert seit: 7. Okt 2003
62 Beiträge
 
#4

Re: Actions zur Laufzeit: Absturz bei ImageListzuweisung

  Alt 9. Mär 2004, 01:54
Zitat von fylo:
hi

versuch mal noch die imagelist des actionmanagers der action zuzuweisen
myAction.ActionList:=ActionManager;
Oh Mann, das wars. Das ist mir ja jetzt echt peinlich.

Aber ich danke dir auf jeden Fall. Ich hätte das wohl nie mehr hinbekommen.



Fingolfin
  Mit Zitat antworten Zitat
Antwort Antwort


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