Einzelnen Beitrag anzeigen

EWeiss
(Gast)

n/a Beiträge
 
#8

Re: Canvas.Handle via GetDC(Panel1.Handle)

  Alt 27. Mai 2008, 14:07
Zitat von DeddyH:
Bei mir geht das aber auch. Vielleicht liegt der Fehler ganz woanders?

[edit] Glückwunsch zum 1000. Beitrag [/edit]
Danke ... danke
Achte auf sowas gar nicht. hiihihih

Ich übergebe das DC an meine DLL (BAssVis)
Über GetDC funktioniert es aber nicht über das direkte DC 'canvas.handle' was auch immer Image oder paintBox

SON_PaintHandle : DWORD; // Als DWORD da GetDC Cardinal zurückgibt
Delphi-Quellcode:
    BASSVISKIND_SONIQUE:
    begin
      _HDC := GetDc(Panel1.handle);
      If optPanel.checked = True Then
      begin
        mExec.AMP_SON_Pluginfile := PChar(pathlist.Strings[IndexNum]);
        mExec.SON_ConfigFile := PChar(PluginDir + '\vis.ini');
        mExec.SON_Flags := 0;
        mExec.SON_PaintHandle := _HDC;
        mExec.Left := 0;
        mExec.Top := 0;
        mExec.Width := Panel1.Width;
        mExec.Height := Panel1.Height;

        BASSVIS_ExecutePlugin(@mExec, mVisParam);
        ini := TIniFile.Create(ChangeFileExt(application.exename, '.ini'));
        sliSlowfade.Position := ini.ReadInteger('PluginType', 'Slowfade', 2);
        ini.Free;
      end;
funktioniert ohne problem

Delphi-Quellcode:
    BASSVISKIND_SONIQUE:
    begin
      If optPanel.checked = True Then
      begin
        mExec.AMP_SON_Pluginfile := PChar(pathlist.Strings[IndexNum]);
        mExec.SON_ConfigFile := PChar(PluginDir + '\vis.ini');
        mExec.SON_Flags := 0;
        mExec.SON_PaintHandle := PaintBox1.Canvas.Handle;
        mExec.Left := 0;
        mExec.Top := 0;
        mExec.Width := PaintBox1.Width;
        mExec.Height := PaintBox1.Height;

        BASSVIS_ExecutePlugin(@mExec, mVisParam);
        ini := TIniFile.Create(ChangeFileExt(application.exename, '.ini'));
        sliSlowfade.Position := ini.ReadInteger('PluginType', 'Slowfade', 2);
        ini.Free;
      end;
geht nicht.. hmmmmm

gruss Emil
  Mit Zitat antworten Zitat