Thema: MpuAboutWnd

Einzelnen Beitrag anzeigen

Olli
(Gast)

n/a Beiträge
 
#1

Re: MpuAboutWnd

  Alt 7. Jan 2007, 21:45
Zitat von Luckie:
Könnte ich auch machen, aber wenn man im Dialog ein anderes Icon haben will, hat man ein Problem. Ich will zum Beispiel im About-Dialog mein persönliches Icon haben und nicht das von der Anwendung.
Und was hält dich davon ab ein beliebiges eigenes Icon zu benutzen??? Also irgendwie verstehe ich dich in letzter Zeit nicht mehr ...



Kannst du uns allen auch mal das hier erklären?:
Code:
  case uMsg of
    WM_MOUSELEAVE:
      if WindowHover then
      begin
        // reset state
        WindowHover := False;
        // create and set font
        [color=red]LinkFontHover := CreateFont(-MulDiv(LINKFONTSIZE, GetDeviceCaps(GetDC(hLinkStc), LOGPIXELSY), 72), 0, 0, 0, 400,
          0, 0, 0, ANSI_CHARSET, OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS, DEFAULT_QUALITY, DEFAULT_PITCH, LINKFONTNAME);[/color]
        if LinkFontHover <> 0 then
        begin
          // save handle as a window property
          [color=red]SetProp(hLinkStc, 'LinkFontHover', LinkFontHover);
          SendMessage(hLinkStc, WM_SETFONT, Integer(LinkFontHover), Integer(true));[/color]
        end;
      end;
    WM_MOUSEMOVE:
      if not WindowHover then
      begin
        // save state
        WindowHover := True;
        // create and set font
        [color=red]LinkFontNonHover := CreateFont(-MulDiv(LINKFONTSIZE, GetDeviceCaps(GetDC(hLinkStc), LOGPIXELSY), 72), 0, 0, 0,
          400, 0, 1, 0, ANSI_CHARSET, OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS, DEFAULT_QUALITY, DEFAULT_PITCH,
          LINKFONTNAME);[/color]
        if LinkFontNonHover <> 0 then
        begin
          // save the handle as a window property
          [color=red]SetProp(hLinkStc, 'LinkFontNonHover', LinkFontNonHover);
          SendMessage(hLinkStc, WM_SETFONT, Integer(LinkFontNonHover), Integer(true));[/color]
        end;
        // track WM_MOUSELEAVE
        EventTrack.cbSize := SizeOf(EventTrack);
        EventTrack.dwFlags := TME_LEAVE;
        EventTrack.hwndTrack := hLinkStc;
        EventTrack.dwHoverTime := HOVER_DEFAULT;
        TrackMouseEvent(EventTrack);
      end;
Mir erschließt sich im Moment nämlich nicht, wieso du bei jedem Mal einen neuen Font erstellst und den alten überschreibst ohne vorher das Handle freizugeben ...

Da wäre noch einiges zu kommentieren, habe ich aber im Moment weder Zeit noch Lust zu ... ewige Dunkelheit macht depressiv.
  Mit Zitat antworten Zitat