Вниз
Скачать: CL | DM;

При вызове sp часики убрать   Найти похожие ветки 

← →
laby ©   (2011-03-10 12:19) [0]

Здравствуйте. При вызове метода TMSStoredProc.ExecProc на момент выполнения курсор принимает форму часиков. Метод вызывается периодически и часики раздражают. Подскажите, как сделать чтобы курсор не менял свое состояние при вызове данного метода. Спасибо.


← →
laby ©   (2011-03-10 14:52) [1]

Ну а с часиками то подмогните, воапшчще не знаю где копать


← →
Cobalt ©   (2011-03-10 15:52) [2]

Попробуй включить в свойствах проекта , там где Compiler, включить опцию Use debug DCU"s, и пройти по внутренностям TMSStoredProc.ExecProc (это кнопочка F7 (Trace Into)), найдя место, где изменяется курсор.

Вдруг там есть какая-то опция, которая позволяет не изменять курсор?


← →
Cobalt ©   (2011-03-10 15:53) [3]

А еще можно посмотреть доступные свойства компонента, вдруг там есть какое-нибудь свойство типа Cursor или как-то похоже называется.


← →
laby ©   (2011-03-10 16:32) [4]

procedure TCustomDADataSet.Execute;
...
     if not FNonBlocking then
       StartWait;
...
end;

procedure StartWait;
begin
 if Assigned(StartWaitProc) then
   StartWaitProc;
end;

var
 StartWaitProc: procedure;

procedure StartWait;

initialization
 StartWaitProc := nil;

Вызывается из файла dacgui.inc функция

procedure StartWait;
begin
 SetCursor(crSQLWait);
end;

Походу зло исходит от Assigned(StartWaitProc)

Где оно ассигнется и как его разассигнуть?


← →
laby ©   (2011-03-10 16:37) [5]

закомментил в memdata тело StartWait

// if Assigned(StartWaitProc) then
  // StartWaitProc;

часики пропали, но это наверное неправильное решение потому как теперь часиков воабпштщче не будет.


← →
laby ©   (2011-03-10 16:48) [6]

Еще FNonBlocking можно установить


← →
laby ©   (2011-03-10 17:12) [7]

TCustomDADataSet.FNonBlocking не устанавливается. Можно установить TCustomDADataSet.Options.NonBlocking но от этого TCustomDADataSet.FNonBlocking не устанавливается


← →
Какаду   (2011-03-10 18:20) [8]

var
 ExProc: procedure;
begin
 ExProc := StartWaitProc;
 try
   StartWaitProc := nil;
   // Тут тот самый вызов TMSStoredProc.ExecProc
 finally
   StartWaitProc := ExProc;
 end;
end;


← →
laby ©   (2011-03-11 14:28) [9]

Спасибо Какаду!



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.004 c
2-1299929528
mefodiy
2011-03-12 14:32
2011.06.19
Ввод со сканера штрих-кодов


15-1298562424
И. Павел
2011-02-24 18:47
2011.06.19
Тяжелый рок!


2-1299748767
laby
2011-03-10 12:19
2011.06.19
При вызове sp часики убрать


15-1299060395
Scott Storch
2011-03-02 13:06
2011.06.19
Цифровая подпись


15-1299164683
bad man
2011-03-03 18:04
2011.06.19
бинарные операции




   Наверх