Форум: "Основная";
Текущий архив: 2006.01.29;
Скачать: [xml.tar.bz2];
ВнизУделение изображения курсора из клетки StringGrid после ввода в к Найти похожие ветки
← →
Игорь Степанов (2005-12-18 13:39) [0]Уважаемые мастера,
Я использую StringGrid для ввода пользователем чисел. StringGrid работает в режиме Options goEditing=True.
При этом при переходе в колонке вниз от клетки к клетке в клетках, куда уже введено число остаётся изображение курсора. Этот дефект ничему не мешает, но хотелось бы от него избавиться. Вероятно, где-то надо записать метод StringGrid1.Refresh. Надо ли это делать в процедуре StringGrid1DrawCell или где-то в другом месте?
С уважением,
Игорь Степанов
← →
jack128 © (2005-12-18 14:25) [1]Игорь Степанов (18.12.05 13:39)
куда уже введено число остаётся изображение курсора
Что то не смог воспроизвести. Опиши пошагово чтоо нужно делать.
Игорь Степанов (18.12.05 13:39)
Вероятно, где-то надо записать метод StringGrid1.Refresh
Нет. метод Refresh вызывается вручную исключительно редко. Обычно вместот него вызывается Invalidate
Игорь Степанов (18.12.05 13:39)
Надо ли это делать в процедуре StringGrid1DrawCell
Нет, ни в коем случае. Это приведет в бесконечной рекурсии. Если твой глюк происходит при переходе от одной ячейке к другой, то вызывай Invalidate где нить в OnSelectCell
← →
Игорь Степанов (2005-12-20 10:35) [2]Уважаемый Евгений,
Излагаю процесс ввода чисел пошагово.
После открытия формы со StringGrid столбик с клетками, куда следует вводить числа пока пустой. Никакого курсора нет. Щёлкаю на самой верхней клетке. В ней начинает мигать курсор. Ввожу число. Курсор продолжает мигать справа от числа. Мышкой щёлкаю на нижележащей клетке. В ней появляется мигающий курсор. Из вышележащей клетки иногда курсор исчезает, а иногда остаётся, но уже не мигает. И этот феномен наблюдается при вводе в нижележащие клетки.
Иными словами, точной закономерности нет. В чём причина, мне неясно.
С уважением, Игорь Степанов
← →
sniknik © (2005-12-20 11:08) [3]попробуй тему в виндах поменять на стандартную, или лучше на классическую. (видел глюк с курсором мыши на нестандартной теме... может аналогичное)
← →
Игорь Степанов (2005-12-20 18:03) [4]Какую тему в виндах?
Что это обозначает?
С уважением,
Игорь Степанов
← →
LORAN (2005-12-20 18:17) [5]Пускк-Настройка-Панель управления-Мышь
Выбери схему стандартная ( классическая)
← →
sniknik © (2005-12-20 18:23) [6]в XP это в свойствах экрана, можно правой кнопкой мыши по десктопу -> свойства -> первая вкладка "темы".
← →
Игорь Степанов (2005-12-21 14:07) [7]Уважаемые мастера,
Мне нужно, чтобы этого глюка не было не только на моём компьютере, а на любом компьютере любого пользователя, который будет работать с моей программой. Поэтому, подскажите, пожалуйста, как то, что вы предлагаете, сделать программным способом.
С уважением,
Игорь Степанов
← →
sniknik © (2005-12-21 15:28) [8]так это и так работает без глюков. глюк есть (если подтвердилось с темой) в конкретной настройке твоей винды. (гдето чтото с caret-кой неладно) у других этого не должно быть.
← →
Игорь Степанов (2005-12-21 16:05) [9]Я сейчас перепробовал классическую и другие темы, но это не помогает.
Мой приятель на другом компьютере тоже обнаружил этот глюк, но реже, чем на моём.
Может быть в событии OnSelectCell добавить Refresh или Invalidate?
С уважением, Игорь Степанов
← →
sniknik © (2005-12-21 16:12) [10]ну если это на нескольких компах подтвердилось, то может и ты там "руку приложил" гденибудь. (ошибка потихоньку перекочевывает в 17ю строку ;)
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2006.01.29;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.035 c