Set_cursor

Internφ programovacφ jazyk

function Set_cursor(tvar : short) : short;

Parametry

tvar po₧adovan² tvar kurzoru myÜi

Popis

Funkce Set_cursor nastavuje tvar kurzoru spojenΘho s myÜφ. Pokud je parametr tvar roven nule, nastavφ obyΦejn² kurzor s Üipkou, je-li roven jednΘ, nastavφ kurzor s p°es²pacφmi hodinami.

Toto nastavenφ platφ pouze do tΘ doby, dokud u₧ivatel nepohne s myÜφ a nenφ doruΦena zprßva o tΘto akci. Nastavenφ kurzoru ve tvaru hodin mß smysl tehdy, pokud program provßdφ Φasov∞ nßroΦn² v²poΦet, b∞hem n∞ho₧ nezpracovßvß dochßzejφcφ zprßvy (tedy nevolß funkci Get_message ani Peek_message).

Po ukonΦenφ programu se kurzor automaticky nastavφ do tvaru Üipky.

V externφch jazycφch lze vyu₧φt stejn∞ pojmenovanΘ funkce pat°φcφ do programovΘho rozhranφ Windows.

Hodnota funkce

Funkce vracφ p°edchozφ tvar kurzoru, tedy 1 pro hodiny a 0 pro Üipku.

P°φklad:

Ukßzka, jak je mo₧no v programu reagovat na dΘle trvajφcφ databßzovΘ akce - na poΦßtku otev°φt modßlnφ formulß°, nastavit tvar kurzoru a p°ekreslit status bar, na konci opak.

procedure WaitStart;
{*****************************}
begin
  Set_status_text("Probφhß delÜφ akce...");
  Set_cursor(1);
  Open_view("*Wait",-1,0,0,0,idwait);
  Peek_message;
end;

procedure WaitEnd;
{*****************************}
begin
  Close_view(idwait);
  Set_cursor(0);
  Set_status_text("");
end;

procedure PodleJmenaPrekreslitIdadr;
{*****************************}
var
  ssql : string[200];
begin
  WaitStart;
  Close_cursor(cvyb);
  case volba of
    1 : ssql := "SELECT DISTINCT Adresar.* FROM Adresar,Registr WHERE (Registr.Cislo=Adresar.Cislo) AND (Registr.vyrizeno=false) AND (Registr.predano="""+mejmeno+""")";
    2 : ssql := "SELECT DISTINCT Adresar.* FROM Adresar,Registr WHERE (Registr.Cislo=Adresar.Cislo) AND (Registr.vyrizeno=false) AND (Registr.predano="""+voljmeno+""")";
  end;
  if Open_sql_cursor(cvyb,ssql) then Signalize;
  Set_fcursor(idadr,cvyb,-1);
  WaitEnd;
end;