Einzelnen Beitrag anzeigen

DiamondDog

Registriert seit: 26. Apr 2008
Ort: Hamm
27 Beiträge
 
#1

Icon aus Ordner laden und anzeigen nur wie?

  Alt 15. Mär 2009, 10:39
Hallo Leute,
ich hab da folgendes Problem und zwar im nachfolgenden Code würde ich gerne das TestIco aus einem Ordner laden und anzeigen lassen, leider hab ich keine Ahnung wie ich das anstellen muss und brächte etwas Hilfe.

Delphi-Quellcode:
procedure TQipPlugin.DrawSpecContact(PlugMsg: TPluginMessage);
var ContactId : DWord;
    wStr : WideString;
// Data : Pointer;
    Cnv : TCanvas;
    R : PRect;
    R1 : TRect;
    TestIcon : HICON;
// TestIcon : TICON;
begin
  if not Assigned(FfrmMain) then Exit;

  ContactId := PlugMsg.WParam;

  if (ContactId <> FfrmMain.UniqContactId) then Exit;

  //Data not used here in this example because plugin added only one contact
  //Data := Pointer(PlugMsg.LParam);

  Cnv := TCanvas.Create;
  try

  Cnv.Handle := PlugMsg.NParam;

  R := PRect(PlugMsg.Result);

  SetBkMode(Cnv.Handle, TRANSPARENT);

  TestIcon := LoadImage(0, IDI_INFORMATION, IMAGE_ICON, 16, 16, LR_DEFAULTCOLOR or LR_SHARED or LR_LOADTRANSPARENT);

  DrawIconEx(Cnv.Handle, 8, 2, TestIcon, 16, 16, 0, 0, DI_NORMAL);

  DestroyIcon(TestIcon);

  wStr := 'Text';

  Cnv.Font.Name := 'Tahoma';
  Cnv.Font.Color := clNavy;
  Cnv.Font.Size := 8;
  Cnv.Font.Style := [fsBold];

  R1 := Rect(R^.Left + 26 + FSpecLeft, R^.Top + 1 + FSpecTop, R^.Right, R^.Bottom);

  DrawTextW(Cnv.Handle, PWideChar(wStr), Length(wStr), R1, DT_LEFT);

  finally
  Cnv.Free;
  end;
end;
Ich weiß zwar das das ich es so laden kann:
Delphi-Quellcode:
var TestIcon : TICON;
[...]
    TestIcon := TIcon.Create;
    TestIcon.LoadFromFile(ExtractFilePath(FDllPath)+'Test.ico');
[...]
aber nicht wie ich es anstellen muss, das es nachher angezeigt wird.

Danke schon mal für eure Hilfe.

Mfg Dog

[edit=Luckie]Tippfehler im Titel korrigiert. Mfg, Luckie[/edit]
  Mit Zitat antworten Zitat