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]