Google PageRank 
Checker - Page Rank Calculator

Sonda

Czy podoba Ci się ta strona?
 

Menu

Home
Linki

Online

Odwiedza nas 4 gości

Ads


Pozycjonowanie  linków - www.LiveLink.pl
RedSkull Home Site CodingPortal
Home arrow FAQ
FAQ Drukuj
1. Jak zrobić, aby w ListBox każda czcionka była wyswietlana w osobnym kroju?
2. Jak zmienić datę w systemie?
3. Jak używać w swojej aplikacji innych kursorów?
4. Jak zrobić program wyszukujący daną pozycję w TListBox?
5. Jak przewijać zawartość Memo poprzez naciskanie przycisku?
6. Jak rozpoznać typy dysków jakie są w komputerze?
7. Jak wyszukać plik na dysku?
8. Jak zmienić wybraną właściwość wszystkich komponentów danego typu?
9. Jak sprawdzić czy dany plik istnieje?
10. Jak wykryć literę CD-ROM'u?
11. Jak usunąć moją aplikację z listy znajdującej się po naciśnięciu klawiszy: Ctrl + Alt + Del?
12. Jak wyciągnąć listę zainstalowanych czcionek?
13. Jak zrobić zrzut ekranu do komponentu TImage?
14. Jak odtworzyć dźwięk?
15. Jak uruchomić jakąś aplikację?
16. Jak wyłączyć komputer?
17. Jak sprawdzić naraz w dwóch TMemo, czy zawierają jakieś linie?
18. Jak dodać poziomy pasek przesuwania do TListBox?
19. Jak wyciągnąć źródło strony z TWebBrowser'a?
20. Jak obliczyć ile miejsca na dysku zajmuje katalog wraz z podkatalogami?
21. Jak odczytać rozdzielczość ekrnau?
22. Jak ukryć jakiś plik (Atrybut: Ukryty )?
23. Jak odświeżyć pulpit?
24. Jak pobrać ikonę dowolnego programu?
25. Jak pobrać uchwyt (Handle) dowolnego okna?
26. Jak sformatować datę do postaci: 25 stycznia 2001?
27. Jak regulować dźwięk przy pomocy TTrackBar'a?
28. Jak skonwertować obrazek z *.bmp na *.jpg?
29. Jak uaktywnić jakiś kopmonent, np. TEdit?
30. Jak ukryć kursor klawiatury?
31. Jak ukryć kursor myszy?
32. Jak uruchomić program przy starcie systemu?
33. Jak wyciągnąć folder w którym znajduje się plik z podanej ścieżki?
34. Jak wyciągnąć nazwę pliku z podanej ścieżki?
35. Jak sprawdzić ile miejsca na dysku zajmuje plik?
36. Jak wykonać tyle operacjii ile jest liń w TMemo?
37. Jak uzyskać listę uruchomionych aplikacjii?
38. Jak zmienić tapetę pulpitu?
39. Jak wywołać standardowe okno do wyboru katalogu?
40. Jak uzyskać systemowe ikonki?
41. Jak spośród 20 TLabel wybrać ten o najwiekszej wartości?
42. Jak w wstawić text do RichEdit w miejscu, gdzie jest kursor?
43. Jak pobrac lub ustawic pozycje kursora klawiatury?
44. Jak pobrac lub zmienic czestotliwosc migania kursora klawiatury?
45. Jak malowac po pulpicie?

1. Jak zrobić, aby w ListBox każda czcionka była wyswietlana w osobnym kroju?

1.w OnCreate listbox wpisz:
ListBox.Items := Screen.Fonts;
2.w DrawItem: with ListBox1.Canvas do
  begin
    FillRect(Rect);
    Font.Name := ListBox1.Items[Index];
    Font.Size := 0;
    TextOut(Rect.Left, Rect.Top, ListBox1.Items[Index]);
  end;
3.w MeasureItem: with ListBox1.Canvas do
  begin
    Font.Name := Listbox1.Items[Index];
    Font.Size := 0;
    Height := TextHeight('!!') ;
  end;
Teraz w Inspektorze Obiektów musisz zmienić właściwość "Style" komponentu "ListBox" na "lbOwnerDrawVariable".Można to zrobić też w kombi.

2. Jak zmienić datę w systemie?

Var
  Data:Systemtime;
Begin
  Data.wMonth:= 05;
  Data.wDay:=02;
  Data.wYear:=2005;
  SetLocalTime(Data);
end;

3. Jak używać w swojej aplikacji innych kursorów?

Screen.Cursors[numer_kursora]:=LoadCursorFromFile('nazwa_pliku');
Form1.Cursor:=numer_kursora;
numer_kursora jest dowolną liczbą całkowitą większą od 0 lub mniejszą od -20.

4. Jak zrobić program wyszukujący daną pozycję w TListBox?

W OnKeyUp Edit1 wpisz:
Var
  I, Found : Integer;
Begin
For I := 0 to ListBox1.Items.Count -1 do
  begin
    Found := Pos(Edit1.Text, ListBox1.Items[i]);
    if (Found > 0)and(ListBox1.Items[i][1] = Edit1.Text[1]) then
      begin
        ListBox1.ItemIndex := i;
        Break;
      end;
  end;
end;

5. Jak przewijać zawartość Memo poprzez naciskanie przycisku?

Aby przewinąć linie w dół:
Memo1.Perform(WM_VSCROLL,SB_LINEDOWN,0);
Aby przewinąć linie w górę:
Memo1.Perform(WM_VSCROLL,SB_LINEUP,0);

6. Jak rozpoznać typy dysków jakie są w komputerze?

procedure JakieDyski;
var
  i : Integer;
  Typ : Integer;
  Dysk : String;
  Opis : String;
begin
  for i := Ord('A') to Ord('Z') do
    begin
      Dysk := Chr(i) + ':\';
      Typ := GetDriveType(PChar(Dysk));
      case Typ of
        0: Opis:='Nie można określić typu urządzenia';
        1: Opis:='Na urządzeniu nie ma katalogu źródłowego';
        Drive_Removable:Opis:= Dysk + ' Dysk wymienny';
        Drive_Fixed: Opis:=Dysk + ' Dysk stały';
        Drive_Remote: Opis:=Dysk + ' Dysk sieciowy';
        Drive_Cdrom: Opis:=Dysk + ' CD-ROM';
        Drive_Ramdisk: Opis:=Dysk + ' Dysk pamięciowy (RAM disk)';
      end;
      if(Typ<>0)and(Typ<>1)then Form1.ListBox1.Items.Add(Opis);
    end;
end;

7. Jak wyszukać plik na dysku?

procedure TForm1.Button1Click(Sender: TObject);
var
  Plik : Integer;
  SR : TSearchRec;
Begin
  Plik := FindFirst('c:\*.*',faAnyFile,SR);
  while Plik = 0 do
    begin
      ListBox1.Items.Add(SR.Name);
      Plik := FindNext(SR);
    end;
  FindClose(SR);
end;

8. Jak zmienić wybraną właściwość wszystkich komponentów danego typu?

Pokażę to na przykładzie: zmienię własciwość caption wszystkich labeli na 'coś'
var
x:integer;
begin
  for x:=0 to ComponentCount-1 do
    if Components[x] is TLabel then
  TLabel(Components[x]).Caption:='coś';
end;

9. Jak sprawdzić czy dany plik istnieje?

if FileExists('C:\a.txt') then
  ShowMessage('Plik isnieje!')
else
  ShowMessage('Plik nie istnieje!');

10. Jak wykryć literę CD-ROM'u?

function DetectCD: string;
var
  Drive : char;
  DrivesCD : string;
begin
  DrivesCD:='';
  for Drive:='a' to 'z' do
    if GetDriveType(PChar(Drive+':\'))=DRIVE_CDROM then
      DrivesCD:=DrivesCD+Drive;
  Result:=DrivesCD;
end;
 
procedure TForm1.Button1Click(Sender: TObject);
var
  Drives : string;
  I : integer;
begin
  Memo1.Clear;
  Drives:=DetectCD;
  for I:=1 to Length(Drives) do
    Memo1.Lines.Add(Drives[I]+':\');
end;

11. Jak usunąć moją aplikację z listy znajdującej się po naciśnięciu klawiszy: Ctrl + Alt + Del?

W sekcji "Interface" dodaj linię:
function RegisterServiceProcess(dwProcessId, dwType:dword) :Integer; stdcall;
 external 'kernel32.dll'
Teraz możesz napisać:
RegisterServiceProcess(GetCurrentProcessID, 1);
Uwaga! Działa tylko w Win 9x

12. Jak wyciągnąć listę zainstalowanych czcionek?

ListBox1.Items := Screen.Fonts;

13. Jak zrobić zrzut ekranu do komponentu TImage?

Bitblt(Image.Picture.Canvas.Handle, 0, 0, Screen.Width, Screen.Height, 0, 0, 0);

14. Jak odtworzyć dźwięk?

Za pomocą komponentu TMediaPlayer:
MediaPlayer1.DeviceType := dtAutoSelect;
MediaPlayer1.FileName:='c:\a.mid';
MediaPlayer1.open;
MediaPlayer1.play;
Dodaj komponent TMediaPlayer Za pomocą funkcji SndPlaySound:
SndPlaySound('c:\a.wav', PARAMETR);
Do sekcji Uses trzeba dodać MMSystem

A oto opisy parametrów :

SND_NODEFAULT - w razie nie znalezienia dźwięku nie odtwarza dźwieku domyślnego
SND_SYNC - na czas odtwarzania dźwięku zatrzymuje program
SND_ASYNC - odtwarza dźwięk w tle - nie zatrzymuje programu
SND_NOSTOP - odtwarza dźwięk od razu, nie sprawdzając, czy nie są odtwarzane inne

15. Jak uruchomić jakąś aplikację?

Sposób pierwszy:
Winexec('C:\windows\calc.exe', sw_normal);
Sposób drugi:
var
  ProInf: TProcessInformation;
  StaInf: TStartupInfo;
begin
  CreateProcess('c:\windows\notepad.exe', nil, nil, nil, false, 0,   
                 nil, nil, StaInf, ProInf);
end;

16. Jak wyłączyć komputer?

Win 9x:

ExitWindowsEx(EWX_SHUTDOWN,0)- zamknięcie systemu
ExitWindowsEx(EWX_LOGOFF,0)- wylogowanie
ExitWindowsEx(EWX_REBOOT,0) - reset

Win XP:
ShellExecute(0, nil, PChar('shutdown.exe') ,PChar('-s'), nil,SW_SHOW);

17. Jak sprawdzić naraz w dwóch TMemo, czy zawierają jakieś linie?

if (Memo1.Lines.Count>0)and(Memo2.Lines.Count>0) then
  begin
    //instrukcje jesli zawierają
  end else
  begin
    //w przeciwnym wypadku...
  end;

18. Jak dodać poziomy pasek przesuwania do TListBox?

W OnClick listy wpisz:
procedure TForm1.ListBox1Click(Sender: TObject);
var
  S : String;
begin
  if ListBox1.ItemIndex = -1 then Exit;
  S := ListBox1.Items[ListBox1.ItemIndex];
  ListBox1.Canvas.Font.Assign(ListBox1.Font);
  if ListBox1.Canvas.TextWidth(S) > ListBox1.ClientWidth then
  SendMessage(ListBox1.Handle, LB_SETHORIZONTALEXTENT,   
  ListBox1.Canvas.TextWidth(S) + 10, 0 )
    else SendMessage(ListBox1.Handle, LB_SETHORIZONTALEXTENT, 0, 0);
end;

19. Jak wyciągnąć źródło strony z TWebBrowser'a?

Sposób 1:
uses   ActiveX, MSHTML_TLB, SHDocVw_TLB,
  ComCtrls, OleCtrls;
 
procedure TForm1.Button1Click(Sender: TObject);
var
  HTMLDocument: IHTMLDocument2;
  PersistFile: IPersistFile;
begin
  HTMLDocument := WebBrowser1.Document as IHTMLDocument2;
  PersistFile := HTMLDocument as IPersistFile;
  PersistFile.Save(StringToOleStr('c:\SavedFile.html'), System.True);
end;
Sposób 2:
uses
  WinInet
 
function HttpGetFile(const URL, FileOut: string): Boolean;
var
  hOpen, hOpenUrl: HINTERNET;
  buffer: array[0..63] of Char;
  fsOut: TFileStream;
  dwX: DWORD;
begin
  Result := False;
 
  hOpen := InternetOpen(
    '',
    INTERNET_OPEN_TYPE_PRECONFIG,
    '', '', 0
    );
 
  if hOpen = nil then
  begin
    ShowMessage('InternetOpen Failed !. Please try again !');
    Exit;
  end;
 
  hOpenUrl := InternetOpenURL(
    hOpen,
    PChar(URL),
    '',
    0,
    INTERNET_FLAG_RELOAD or INTERNET_FLAG_HYPERLINK,
    0
    );
 
  if hOpenUrl = nil then
  begin
    InternetCloseHandle(hOpen);
    ShowMessage('InternetOpenUrl Failed ! Please try again !');
    Exit;
  end;
 
  try
    dwX := 0;
    fsOut := TFileStream.Create(FileOut, fmCreate);
    try
 
      repeat
        InternetReadFile(
          hOpenUrl,
          @buffer,
          SizeOf(buffer),
          dwX
          );
        fsOut.write(buffer, dwX);
      until dwX < SizeOf(buffer);
 
      Result := True;
 
    finally
        fsOut.Free;
    end;
 
  finally
    InternetCloseHandle(hOpenUrl);
    InternetCloseHandle(hOpen);
  end;
 
end;
Wywołanie, np.:
procedure TFormMain.Button1Click(Sender: TObject);
begin
  if HttpGetFile('http://www.dhost.info/jack1024', 'jack1024.html') then
    RichEdit1.Lines.LoadFromFile('jack1024.html')
  else
    ShowMessage('ERROR !');
end;
Sposób 3:
function GetHtml(WebBrowser : TWebBrowser) : string;
begin
  Result:=WebBrowser.OleObject.Document.documentElement.innerHTML;
end;
 
RichEdit.Lines.Text := GetHtml(WebBrowser);

20. Jak obliczyć ile miejsca na dysku zajmuje katalog wraz z podkatalogami?

function DirectorySize(path: string): Int64;
var
SRec: TSearchRec;
retval, oldlen : Integer;
Size : Int64;
begin
Size := 0;
 
if path[Length(path)] <> '\' then
  path := path + '\';
 
oldlen := Length(path);
retval := FindFirst(path + '*.*', faAnyFile, SRec);
 
while retval = 0 do
  begin
    Size := Size + SRec.Size;
    retval := FindNext(SRec);
  end;
 
FindClose(SRec);
retval := FindFirst(path + '*.*', faDirectory, SRec);
 
while retval = 0 do
  begin
    if (SRec.Attr and faDirectory) <> 0 then
    if (SRec.Name <> '.') and (SRec.Name <> '..') then
      begin
        path := path + SRec.Name + '\';
        Size := Size + DirectorySize(path);
        Delete(path, oldlen+1, 255);
      end;
      retval := FindNext(SRec);
  end;
 
FindClose(SRec);
Result := Size;
 
end;

21. Jak odczytać rozdzielczość ekrnau?

var
  Rozd : packed record
    X, Y : Integer;
  end;
begin
  Rozd.X := GetSystemMetrics(SM_CXSCREEN);
  Rozd.Y := GetSystemMetrics(SM_CYSCREEN);
  ShowMessage(
  Format('Rozdzialość ekranu: ' + #13+ '%d x %d', [Rozd.X, Rozd.Y]));

22. Jak ukryć jakiś plik (Atrybut: Ukryty )?

SetFileAttributes('C:\Plik.exe', FILE_ATTRIBUTE_HIDDEN);

23. Jak odświeżyć pulpit?

UpdateWindow(GetDesktopWindow);

24. Jak pobrać ikonę dowolnego programu?

Sposób 1:
var
  H : HIcon;
begin
  H := ExtractIcon(Handle,Nazwa Programu.exe', 0);
  Image1.Picture.Icon.Assign(H); 
Sposób 2:
uses ShellApi;
 
Image1.Picture.Icon.Handle:=ExtractIcon(Hinstance,'c:\Program.exe',32);

25. Jak pobrać uchwyt (Handle) dowolnego okna?

var
  H : THandle;
begin
  H:=FindWindow(nil,'Object Inspector');

26. Jak sformatować datę do postaci: 25 stycznia 2001?

ShowMessage( FormatDateTime('dd mmmm yyyy', Now) );

27. Jak regulować dźwięk przy pomocy TTrackBar'a?

W OnChange wpisz:
if TrackBar1.Position = 100 then {jeżeli bar na maxa to vol na maxa}
  WaveOutSetVolume(0, $FFFFFFF)
else
  WaveOutSetVolume(0, ScrollPos * 1000);

28. Jak skonwertować obrazek z *.bmp na *.jpg?

var
  Bitmap : TBitmap;
  JPG : TJPEGImage;
begin
  try
    Bitmap := TBitmap.Create;
    Bitmap.LoadFromFile('C:\plik.bmp');
    JPG := TJPEGImage.Create;
    JPG.Assign(B);
    JPG.SaveToFile('C:\plik.jpg');
  finally
    B.Free;
    JPG.Free;
  end;
end;

29. Jak uaktywnić jakiś kopmonent, np. TEdit?

Edit1.SetFocus;

30. Jak ukryć kursor klawiatury?

HideCaret(Edit1.Handle); -> ukryj
ShowCaret(Edit1.Handle); -> pokaż

31. Jak ukryć kursor myszy?

ShowCursor(False); -> ukryj
ShowCursor(True); -> pokaż

32. Jak uruchomić program przy starcie systemu?


Sposób 1 - dodanie wpisu do rejestru:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServicesOnce

Pierwsze dwóch klucze - program uruchamiami się po zalogowaniu
Klucze 3 i 4 - program uruchamiami się przed zalogowaniem
Oto przykładowy kod procedury:
uses Registry;
 
var
  Reg : TRegistry;
begin
  Reg := TRegistry.Create;
  Reg.RootKey := HKEY_LOCAL_MACHINE;
  Reg.OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Run', False);
  Reg.WriteString('MójProgram',Application.Exename);
  Reg.CloseKey;
  Reg.Relase;
Sposób 2 - dodanie skrótu do Menu Start (grupa Autorun):
uses ShlObj, ActiveX, ComObj, Registry;
 
var
  MyObject:IUnknown;
  MySLink:IShellLink;
  MyPFile:IPersistFile;
  FileName:String;
  Directory:String;
  WFileName:WideString;
  Reg:TRegistry;
begin
  MyObject:=CreateComObject(CLSID_ShellLink);
  MySLink:=MyObject as IShellLink;
  MyPFile:=MyObject as IPersistFile;
  FileName:=Application.Exename;
 
  with MySLink do
    begin
    SetArguments('C:\AUTOEXEC.BAT');
    SetPath(PChar(FileName));
    SetWorkingDirectory(PChar(ExtractFilePath(FileName)));
  end;
 
  Reg := TRegistry.Create;
  Reg.RootKey := HKEY_CURRENT_USER;
  Reg.OpenKey('Software\MicroSoft\Windows\CurrentVersion\Explorer\Shell Folders',
               False);
  Directory := Reg.ReadString('Startup')
  WFileName := Directory+'\Program.lnk';
  MyPFile.Save(PWChar(WFileName),False);
  Reg.CloseKey;
  Reg.Relase;

33. Jak wyciągnąć folder w którym znajduje się plik z podanej ścieżki?

function ED(Filename:string):string;
var
  s:string;
begin
  s:=Filename;
 
  while Pos('\',s[length(s)])=0 do
    delete(s,length(s),1);
 
  delete(s,length(s),1);
  result:=s;
end;

34. Jak wyciągnąć nazwę pliku z podanej ścieżki?

function EF(Filename:String):String;
begin
  while (Pos('\',Filename)<>0)or(Pos('/',Filename)<>0) do
     delete(Filename,1,1);
 
  EF:=Filename;
end;

35. Jak sprawdzić ile miejsca na dysku zajmuje plik?

var
  Plik : TSearchRec;
  FSize : Integer;
  const // sciezka do programu
    Sciezka = 'C:\Windows\Pulpit\prog.exe';
begin
  if FindFirst(Sciezka, faAnyFile, Plik) = 0 then
    FSize:= PLik.Size else FSize:=0;
  FindClose(PLik);
  // wyswietl rozmiar pliku
  ShowMessage(IntToStr(FSize) + ' bajtów');

36. Jak wykonać tyle operacjii ile jest liń w TMemo?

Wystarczy skorzystać z pętli for:
 
var
  x:integer;
begin
  for x:=9 to memo1.count-1 do
    begin
      {instrukcje}
    end;
end;
[instrukcje] będą powtarzane tyle razy ile jest liń w TMemo.

37. Jak uzyskać listę uruchomionych aplikacjii?

uses TlHelp32;
 
procedure TForm1.btnAddEXEClick(Sender: TObject);
var
  _HWND : THandle;
  Proc : TProcessEntry32;
begin
  _HWND := CreateToolHelp32SnapShot(TH32CS_SNAPALL,0);
 
  Proc.dwSize:=SizeOf(Proc); // okresl rozmiar struktory
 
  if Integer(Process32First(_HWND, Proc)) <> 0 then
  repeat
    ListBox1.Items.Add(Proc.szExeFile); //dodaje sciezkie do Listy
  until Integer(Process32Next(_HWND, Proc)) = 0; //dopoki wartosc <> 0
 
  CloseHandle(_HWND);
end;

38. Jak zmienić tapetę pulpitu?

SystemParametersInfo(SPI_SETDESKWALLPAPER,0, 'c:\tapeta.jpg', 
                    SPIF_UPDATEINIFILE or SPIF_SENDWININICHANGE);

39. Jak wywołać standardowe okno do wyboru katalogu?

uses ShlObj,ActiveX;
 
procedure TForm1.Button1Click(Sender: TObject);
var
  BI:TBrowseInfo;
  Buf:PChar;
  Dir,Root:PItemIDList;
  Alloc:IMalloc;
begin
  // Pobieramy obiekt zarządzający pamięcią
  SHGetMalloc(Alloc);
  // Przydzielamy pamięć na string
  Buf:=Alloc.Alloc(Max_Path);
 
  // Ograniczamy wybór tylko do katalogu "Menu Start\Programs"
  SHGetSpecialFolderLocation(Handle,CSIDL_PROGRAMS,Root);
 
  with BI do
  begin
    hwndOwner:=Form1.Handle;
    pidlRoot:=Root; //Można podać NIL żeby można było wybrać każdy katalog
    pszDisplayName:=Buf;
    lpszTitle:='Wybierz katalog'; // Etykietka przed listą katalogów
    ulFlags:=0;
    lpfn:=nil;
  end;
 
  try
    Dir:=SHBrowseForFolder(BI);
    if Dir<>Nil then
    begin
      // Pobieramy pełną ścieżkę do katalogu
      SHGetPathFromIDList(Dir,Buf);
      // Przykładowe zastosowanie
      ShowMessage(Buf);
      Alloc.Free(Dir);
    end;
  finally
    Alloc.Free(Root);
    Alloc.Free(Buf);
  end;
end;
Inne możliwe do wybrania katalogi specjalne:

CSIDL_BITBUCKET RecycleBin czyli kosz na śmieci
CSIDL_CONTROLS Wirtualny katalog ControlPanel
CSIDL_DESKTOP Wirtualny katalog Desktop
CSIDL_DESKTOPDIRECTORY Katalog na dysku przechowujący obiekty z desktopu
CSIDL_DRIVES My Computer
CSIDL_FONTS Wirtualny folder z fontami
CSIDL_NETHOOD Otoczenia sieciowe
CSIDL_NETWORK Wirtualny odpowiednik powyższego
CSIDL_PERSONAL Katalog Personal
CSIDL_PRINTERS Wirtualny folder z drukarkami
CSIDL_PROGRAMS Programy z menu Start
CSIDL_RECENT Ostatnio użyte dokumenty
CSIDL_SENDTO Folder SendTo
CSIDL_STARTMENU Całe StartMenu
CSIDL_STARTUP Grupa Autostart
CSIDL_TEMPLATES Szablony dokumentów

40. Jak uzyskać systemowe ikonki?

Image1.Picture.Icon.Handle := LoadIcon(0, IDI_APPLICATION);
Istnieje możliwość zastosowania także tych ikonek: IDI_ASTERISK IDI_EXCLAMATION IDI_HAND IDI_QUESTION IDI_WINLOGO

41. Jak spośród 20 TLabel wybrać ten o najwiekszej wartości?

function PobierzNajwieksza: Integer;
var
  Najwieksza: Integer;
begin
  Najwieksza := -MaxInt;
 
  for i := 0 to Form.ComponentCount - 1 do
    if Form.Components[i] is TLabel then
      with Form.Components[i] as TLabel do
        Najwieksza := Max(StrToInt(Caption), Najwieksza);
 
  Result := Najwieksza;
end;

42. Jak w wstawić text do RichEdit w miejscu, gdzie jest kursor?

RichEdit1.SelText:='MST';
Kiedy zaznaczymy w RichEdit jakiś tekst i wywołamy tą procedurę to tekst ten zostanie zamieniony na 'MST'.

43. Jak pobrac lub ustawic pozycje kursora klawiatury?

var Punkt:TPoint;
 
SetCaretPos(0,0); //Ustaw
GetCaretPos(Punkt); //Pobierz 

44. Jak pobrac lub zmienic czestotliwosc migania kursora klawiatury?

SetCaretBlinkTime(200); //ustaw na 200mS
x:=GetCaretBlinkTime; //pobierz 

45. Jak malowac po pulpicie?

Wystarczy pobrac uchwyt pulpitu:
Canvas.Handle := GetWindowDC(GetDesktopWindow);
Canvas.TextOut(100,100, 'MST KJ');
ReleaseDC(GetDesktopWindow, Canvas.Handle);
 
© 2009 MST - Programowanie w Delphi
Joomla! is Free Software released under the GNU/GPL License.
Thalassa Village Skanes Łożyska izolacje przeciwwodne rtv Wyniki na żywo
Dekoracje - wczasy - PŁYTY INDUKCYJNE - Kredyty samochodowe - etui na aparat - Gabinet Weterynaryjny - projektowanie stron - Bory Tucholskie