::: µ¨ÆÄÀÌ Tip&Trick :::

µ¨ÆÄÀÌ Tip&Trick ¼º°Ý¿¡ ¸ÂÁö ¾Ê´Â ±¤°í,ºñ¹æ,Áú¹®ÀÇ ±ÛÀº Áï½Ã »èÁ¦Çϸç
³»¿ëÀ» º¹»çÇÏ¿© »ç¿ëÇÒ °æ¿ì ¹Ýµå½Ã À̰÷(http://www.howto.pe.kr)À» Ãâó·Î ¸í½ÃÇÏ¿© ÁÖ¼¼¿ä


Category

  ±è¿µ´ë(2004-07-24 22:35:09, Hit : 9667, Vote : 4048
 http://www.howto.pe.kr
 ¸¶¿ì½º ¾Æ·¡ÀÇ À©µµ¿ì ÇÚµé ±¸Çϱâ

// ¾Æ·¡Ã³·³ ŸÀ̸Ӹ¦ »ç¿ëÇÏÁö ¾Ê°í ¸¶¿ì½º ÈÄÅ·À» »ç¿ëÇϸé Á»´õ °£°áÇÑ ÇÁ·Î±×·¥À» ¸¸µé ¼ö ÀÖ½À´Ï´Ù
// SetWindowsHookEx(WH_MOUSE,...) ¸¦ ã¾Æº¸¼¼¿ä

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls;

type
  TForm1 = class(TForm)
    Timer1: TTimer;
    Memo1: TMemo;
    procedure Button1Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

const
  PROCESS_MURDER = $0001;
  
var
  Form1: TForm1;

implementation

{$R *.dfm}

function ForceForegroundWindow(hwnd: THandle): boolean;
const
  SPI_GETFOREGROUNDLOCKTIMEOUT = $2000;
  SPI_SETFOREGROUNDLOCKTIMEOUT = $2001;
var
  ForegroundThreadID: DWORD;
  ThisThreadID: DWORD;
  timeout: DWORD;
begin
  if IsIconic(hwnd) then
    ShowWindow(hwnd, SW_RESTORE);
  if GetForegroundWindow = hwnd then
    Result := true
  else
  begin
    {Windows 98/2000 doesn't want to foreground a window when some
    other window has keyboard focus}
    if ((Win32Platform = VER_PLATFORM_WIN32_NT) and (Win32MajorVersion > 4))
       or ((Win32Platform = VER_PLATFORM_WIN32_WINDOWS) and ((Win32MajorVersion > 4)
       or ((Win32MajorVersion = 4) and (Win32MinorVersion > 0)))) then
    begin
      {Code from Karl E. Peterson, www.mvps.org/vb/sample.htm
      Converted to Delphi by Ray Lischner
      Published in The Delphi Magazine 55, page 16}
      Result := false;
      ForegroundThreadID := GetWindowThreadProcessID(GetForegroundWindow,nil);
      ThisThreadID := GetWindowThreadProcessId(hwnd,nil);
      if AttachThreadInput(ThisThreadID, ForegroundThreadID, true) then
      begin
        BringWindowToTop(hwnd);  {IE 5.5 related hack}
        SetForegroundWindow(hwnd);
        AttachThreadInput(ThisThreadID, ForegroundThreadID, false);
        Result := (GetForegroundWindow = hwnd);
      end;
      if not Result then
      begin
        {Code by Daniel P. Stasinski}
        SystemParametersInfo(SPI_GETFOREGROUNDLOCKTIMEOUT, 0, @timeout, 0);
        SystemParametersInfo(SPI_SETFOREGROUNDLOCKTIMEOUT, 0, TObject(0),
                                                     SPIF_SENDCHANGE);
        BringWindowToTop(hwnd);  {IE 5.5 related hack}
        SetForegroundWindow(hWnd);
        SystemParametersInfo(SPI_SETFOREGROUNDLOCKTIMEOUT, 0, TObject(timeout),
                                                     SPIF_SENDCHANGE);
      end;
    end
    else
    begin
      BringWindowToTop(hwnd);  {IE 5.5 related hack}
      SetForegroundWindow(hwnd);
    end;
    Result := (GetForegroundWindow = hwnd);
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  ForceForegroundWindow(Self.Handle);
end;

procedure TForm1.Timer1Timer(Sender: TObject);
var
  APoint: TPoint;
  AHwnd: HWND;
  c, P: array[0..256] of Char;
begin
  GetCursorPos(APoint);
  AHwnd := WindowFromPoint(APoint);

  P[0] := #0;
  GetWindowText(AHwnd, P, 255); {window's title bar¸¦ ¾Ë¾Æ³½´Ù}
  if (P[0] <> #0) then
  begin
    Memo1.Lines.Add(P);

    if GetClassName(AHwnd, c, SizeOf(c)) > 0 Then
      Memo1.Lines.Add(c);
  end;
end;

end.





611   [ÀϹÝ/ÄÄÆ÷³ÍÆ®] ¸ð¼­¸®°¡ µÕ±Ù(rounded ends) TMemo ¸¸µé±â  ±è¿µ´ë 2004/07/25 4643 1191
610   [À©µµ¿ìÁî API] ¸ð¼­¸®°¡ µÕ±Ù(rounded ends) TEdit ¸¸µé±â  ±è¿µ´ë 2003/03/07 4958 1288
609   [À©µµ¿ìÁî API] ¸ðµç âÀ» ¾ÆÀÌÄÜ Ç¥½Ã/Ãë¼Ò  ±è¿µ´ë 2003/03/07 4329 1236
608   [ÀϹÝ/ÄÄÆ÷³ÍÆ®] ¸ðµç µå¶óÀ̺ê,µð·ºÅ丮 °Ë»öÇÏ¿© ÆÄÀÏ Ã£±â  ±è¿µ´ë 2003/03/07 4809 1189
607   [³×Æ®¿÷/ÀÎÅͳÝ] ¸ðµç TCP/IP interfaces ÀÇ IP/Netmask ±¸ÇÏ±â  ±è¿µ´ë 2003/03/07 5726 1258
606   [µ¥ÀÌÅͺ£À̽º] ¸î°¡Áö BDE ȯ°æÁ¤º¸ ±¸ÇÏ±â  ±è¿µ´ë 2003/03/07 4457 1175
605   [ÀϹÝ/ÄÄÆ÷³ÍÆ®] ¸í·ÉÇà ÀÎÀÚ(command line argument) »ç¿ëÇÏ±â  ±è¿µ´ë 2003/03/05 4985 1334
604   [ÀϹÝ/ÄÄÆ÷³ÍÆ®] ¸í·ÉÇà ÀÎÀÚ ¹Þ¾Æ¿À±â  ±è¿µ´ë 2003/03/05 7296 1885
603   [ÀϹÝ/ÄÄÆ÷³ÍÆ®] ¸ÞÀθ޴º°¡ ÆË¾÷µÉ¶§ À̺¥Æ®¸¦ Å»¼öÀִ¹æ¹ý  ±è¿µ´ë 2003/03/07 6606 1725
602   [½Ã½ºÅÛ] ¸Þ¸ð¸® ºÎÇÏ(load)·® ÃøÁ¤ÇØ º¸±â  ±è¿µ´ë 2003/03/05 5351 1274
601   [À©µµ¿ìÁî API] ¸Þ¸ð(TMemo)ÀÇ Ä¿¼­(ij·µ)¸ð¾ç ¹Ù²Ù±â  ±è¿µ´ë 2003/03/05 5032 1925
600   [ÀϹÝ/ÄÄÆ÷³ÍÆ®] ¸Þ´ºÀÇ À߸øµÈ accelerator ¸¦ ¼±ÅÃÇßÀ»¶§  ±è¿µ´ë 2003/03/05 6436 1829
599   [ÀϹÝ/ÄÄÆ÷³ÍÆ®] ¸Þ´º ¾ÆÀÌÅÛÀÇ µ¿Àû Ãß°¡¿Í ±×¸²³Ö±â  ±è¿µ´ë 2003/03/04 7982 1270
598   [½Ã½ºÅÛ] ¸¶ÀÌÅ© º¼·ý Á¶ÀýÇÏ±â  ±è¿µ´ë 2003/03/06 4678 1289
597   [ÀϹÝ/ÄÄÆ÷³ÍÆ®] ¸¶¿ì½ºÄ¿¼­¸¦ ƯÁ¤À§Ä¡·Î À̵¿½ÃŰ±â  ±è¿µ´ë 2003/03/05 5948 1216
596   [½Ã½ºÅÛ] ¸¶¿ì½ºÀÇ ÁÂ/¿ì ±â´É¼³Á¤°ú ¹öư°¹¼ö ¾Ë±â  ±è¿µ´ë 2003/03/06 7500 2033
595   [½Ã½ºÅÛ] ¸¶¿ì½ºÀÇ ÁÂ,¿ì ¹öưÀÇ µ¿ÀÛ ¹Ù²Ù±â  ±è¿µ´ë 2003/03/07 4310 1207
594   [À©µµ¿ìÁî API] ¸¶¿ì½ºÀÇ À̵¿¹üÀ§ Á¦ÇÑÇÏ±â  ±è¿µ´ë 2003/03/05 6050 1496
593   [À©µµ¿ìÁî API] ¸¶¿ì½ºÀÇ ¸ð¾ç ¹Ù²Ù°í À̵¿¹üÀ§ Á¦ÇÑÇÏ±â  ±è¿µ´ë 2003/03/05 5145 1268
592   [ÀϹÝ/ÄÄÆ÷³ÍÆ®] ¸¶¿ì½º¿µ¿ª Á¦¾îÇÏ±â  ±è¿µ´ë 2003/03/05 3710 985
591   [ÀϹÝ/ÄÄÆ÷³ÍÆ®] ¸¶¿ì½º¸¦ ƯÁ¤ ÄÞÆ÷³ÍÆ® À§·Î À§Ä¡½ÃŰ±â  ±è¿µ´ë 2003/03/05 4359 1113
590   [ÀϹÝ/ÄÄÆ÷³ÍÆ®] ¸¶¿ì½º·Î ProgressBarÀÇ Position ¹Ù²Ù±â  ±è¿µ´ë 2006/02/28 5344 1372
589   [ÀϹÝ/ÄÄÆ÷³ÍÆ®] ¸¶¿ì½º°¡ ÆûÀ§¿¡ ÀÖ´ÂÁö ¿©ºÎ¸¦ ¾Ë¾Æ³»·Á¸é...  ±è¿µ´ë 2003/03/05 5312 1447
588   [½Ã½ºÅÛ] ¸¶¿ì½º°¡ ¼³Ä¡µÇ¾î ÀÖ´ÂÁö °Ë»çÇÏ±â  ±è¿µ´ë 2003/03/07 6908 1849
587   [½Ã½ºÅÛ] ¸¶¿ì½º Æ÷ÀÎÅÍ ¼Óµµ ¹Ù²Ù±â  ±è¿µ´ë 2003/03/06 5075 1260
586   [½Ã½ºÅÛ] ¸¶¿ì½º Æ÷ÀÎÅÍ ¼Óµµ ±¸ÇÏ±â  ±è¿µ´ë 2003/03/06 5597 1722
585   [ÀϹÝ/ÄÄÆ÷³ÍÆ®] ¸¶¿ì½º Ä¿¼­ º¸À̱â/°¨Ãß±â  ±è¿µ´ë 2003/03/05 6344 1700
584   [½Ã½ºÅÛ] ¸¶¿ì½º ÀÚÃë(trails)ÀÇ °¹¼ö Á¶Á¤ÇÏ±â  ±è¿µ´ë 2003/03/06 5976 1845
583   [À©µµ¿ìÁî API] ¸¶¿ì½º À§Ä¡ÀÇ ÄÜÆ®·Ñ(ÄÞÆ÷³ÍÆ®)À» Á¶»çÇÏ±â  ±è¿µ´ë 2003/03/07 4662 1122
582   [À©µµ¿ìÁî API] ¸¶¿ì½º À§Ä¡(Desktop)ÀÇ »ö»ó°ª ±¸ÇÏ±â  ±è¿µ´ë 2003/03/05 6332 1590
  [½Ã½ºÅÛ] ¸¶¿ì½º ¾Æ·¡ÀÇ À©µµ¿ì ÇÚµé ±¸ÇÏ±â  ±è¿µ´ë 2004/07/24 9667 4048
580   [½Ã½ºÅÛ] ¸¶¿ì½º µÎ ¹ø ´©¸£±â ¼Óµµ Á¶Á¤ÇÏ±â  ±è¿µ´ë 2003/03/06 6046 1832
579   [ÀϹÝ/ÄÄÆ÷³ÍÆ®] ¸®½ºÆ®ºä¿¡¼­ µ¿ÀûÀ¸·Î Ä®·³»èÁ¦ÇÏ±â  ±è¿µ´ë 2003/03/05 6958 1412
578   [ÀϹÝ/ÄÄÆ÷³ÍÆ®] ·çƾÀÇ Ã³¸®½Ã°£(°æ°ú½Ã°£) ±¸ÇÏ±â  ±è¿µ´ë 2003/03/05 4301 1110
577   [½Ã½ºÅÛ] ·ÎÄà °¡»ó µå¶óÀ̹ö(substitution device) ¸¸µé°í Á¦°ÅÇÏ±â  ±è¿µ´ë 2004/07/25 6254 1337
576   [ÀϹÝ/ÄÄÆ÷³ÍÆ®] ·¹ÄÚµå ±¸Á¶¸¦ ¹è¿­¿ä¼Ò·Î °®´Â Á¤ÀûÀÎ ¹è¿­  ±è¿µ´ë 2003/03/05 4089 1099
575   [À©µµ¿ìÁî API] ·¹Áö½ºÆ®¸®ÀÇ Æ¯Á¤Å°¸¦ ÆÄÀÏ·Î ÀúÀå/º¹¿øÇÏ±â  ±è¿µ´ë 2003/03/07 6621 1495
574   [À©µµ¿ìÁî API] ·¹Áö½ºÆ®¸®ÀÇ º¯°æ¿©ºÎ ¾Ë¸®´Â 2°¡Áö ¹æ¹ý  ±è¿µ´ë 2003/03/06 4786 1286
573   [ÀϹÝ/ÄÄÆ÷³ÍÆ®] ·¹Áö½ºÆ®¸®ÀÇ ±âº» RootKey ¹Ù²Ù±â  ±è¿µ´ë 2003/03/05 4222 1278
572   [ÀϹÝ/ÄÄÆ÷³ÍÆ®] ·¹Áö½ºÆ®¸®ÀÇ "(±âº»°ª)" ¿¡ Àаí/¾²±â  ±è¿µ´ë 2003/03/07 4005 1138

[1][2][3][4][5][6][7][8][9] 10 ..[25] [´ÙÀ½ 10°³]
 

Copyright 1999-2023 Zeroboard / skin by zero