Форум: "Основная";
Текущий архив: 2002.04.04;
Скачать: [xml.tar.bz2];
ВнизФорма не реагирует на нажатие кнопок и мышь в фокусе, и реагирует без фокуса Найти похожие ветки
← →
vvlad (2002-03-21 19:01) [0]Помогите разобраться
Работаю с StringGrid - написал обработчик onDrawCell - рисует определенный рисунок в определенной ячейке
Ячеек изначально нет
При добавлении первой - рисуется нужный рисунок, все хорошо
При добавлении второй ячейки - ячейка рисуется и приложение как бы виснет - кнопочки мышкой не нажимаются, ALT+F4 не работает
Но если сделать активным другое окно, - то все ок
и так пока это глючное приложение не получит фокус
Никто не встречался с подобной проблемой?
StringGrid - создаю в runtime - отловить не выходит
← →
Song (2002-03-21 21:09) [1]Надо бы посмотреть Ваш onDrawCell
← →
vvlad (2002-03-22 15:36) [2]Вот такой код
создаем так
GraphControlLib.OnDrawCell := GraphControlLib.LibGridDrawCell;
GraphControlLib.OnSelectCell := GraphControlLib.SetSelectedGraph;
процедура обработчик
procedure TGraphControlLib.LibGridDrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
begin
MoveDrawCursorToCell(ACol,ARow, Rect);
DrawGraph(ACol,ARow);
end;
и эти две рисовалки
procedure TGraphControlLib.MoveDrawCursorToCell(ACol, ARow: Longint; Rect: TRect);
var
X,Y:Integer;
begin
X:=Rect.Left+round((Rect.Right-Rect.Left)/2);
Y:=Rect.Top+round((Rect.Bottom-Rect.Top)/5);
Self.Canvas.MoveTo(X,Y);
end;
procedure TGraphControlLib.DrawGraph(ARow, ACol: Integer);
var
PenPos: TPoint;
gr: String;
isGraph: Boolean;
Graph: TMathGraph;
i,e: integer;
RootNode: TGraphPoint;
Edge: TGraphEdge;
angle: real;
begin
PenPos:=Canvas.PenPos;
try
if (GraphLib.Items[ACol] <> nil) then isGraph:=true;
except
isGraph:=false;
end;
if (isGraph) then gr:="+" else gr:="";
Self.Canvas.TextOut(PenPos.x,PenPos.y,gr+VarToStr(ACol+1));
if (not isGraph) then exit;
Repaint;
end;
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.04.04;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.005 c