-
С этой мелкой неприятоностью я встретился давно. Есть сетка, в OnDrawCell к ней в ячейку подкладывается SpinEdit. Если он (SpinEdit) создан в DisignTime и родитель у него форма, то всё нормально. А если он Prite Field у компонета-наследника TDrawGrid, то всё работает, только когда SpinEdit получает фокус ввода, он не сразу рисует кнопки со стрелками, а лишь тогда, когда был щелчок мышью по месту, где кнопочки должны находится. При этом он их рисует по одной. Очевидно, что какое-то специфичное сообщение не доходит до внутренниего компнента в SpinEditе. А получает он его только позже от мыши. Думал послать ему мышиный щелчок по месту, где должны быть кнопки, но мне это кажется кривым путем. Наверняка есть какое-то специальное сообщение. Я его пытался найти, читая исходники SpinEditеа, но не нашел, хотя однажды списал с него компонент подобный ему.
-
-
Ну почему же не дал? Но ведь СпинЕдит же рисуется. Ему надо только послать сообщение. Я даже один способ знаю, но он мне кажется кривым
-
Ну вот. Способ посылать сообщения мне казался кривым, но всё корректно заработало:
If FSpinEdit.Visible then SendMessage(FSpinEdit.Handle, WM_LBUTTONDOWN, 1, 0);
|