Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Помогите подобрать событие или WM
|
|||
|---|---|---|---|
|
#18+
Необходимо при создании формы выполнить прокрутку компонента TListView: ListView1.Scroll(0, 20); Если вставлять в OnShow, OnActivate, OnCreate формы, то эффекта нет. Если вставить в обработчик нажатия кнопки, то всё нормально. Но необходимо именно сразу при создании формы. Помогите пожайлуста... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2003, 13:35 |
|
||
|
Помогите подобрать событие или WM
|
|||
|---|---|---|---|
|
#18+
Прокрутку необходимо сделать или все же SELECTED установить? eNose ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2003, 14:13 |
|
||
|
Помогите подобрать событие или WM
|
|||
|---|---|---|---|
|
#18+
Необходимо сделать именно прокрутку. С Selected пока проблем нет. То есть мало сделать элемент списка выбранным, нужно ещё, чтобы он появился перед глазами юзера. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2003, 14:19 |
|
||
|
Помогите подобрать событие или WM
|
|||
|---|---|---|---|
|
#18+
На onShow делаешь PostMessage(Handle,(WM_USER+101),0,0) Потом ловишь его и вперед ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2003, 14:22 |
|
||
|
Помогите подобрать событие или WM
|
|||
|---|---|---|---|
|
#18+
:) а у меня на OnPaint получилось! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2003, 14:25 |
|
||
|
Помогите подобрать событие или WM
|
|||
|---|---|---|---|
|
#18+
2 ZrenBy: Если я буду посылать сообщение при OnShow, ловить его и обрабатывать , то разве это не тоже самое, как если бы я просто вставил обработчик этого сообщения в OnShow? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2003, 14:28 |
|
||
|
Помогите подобрать событие или WM
|
|||
|---|---|---|---|
|
#18+
Блин, если параметры-константа, то по OnPaint() действительно получается. Но проблема, конечно, прокрутить не на 20, 20-это было для простоты восприятия. В полном варианте по OnShow определяем нужный item: Prom:=ListView1.FindCaption(0, Edit1.Text, false, true, false); А уже далее нужно каким то макаром прокрутить до него самого: ListView1.Scroll(0, ListView1.Items.Item[Prom.index-1].Position.y); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2003, 14:47 |
|
||
|
Помогите подобрать событие или WM
|
|||
|---|---|---|---|
|
#18+
TListView.Selected.MakeVisible eNose ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2003, 14:56 |
|
||
|
Помогите подобрать событие или WM
|
|||
|---|---|---|---|
|
#18+
2 eNose: Спасибо. Работает. Есть минус: найденный элемент находится в нижней части области списка. Если скролить вручную, то можно сделать его посередине списка или вначале. Да и вообще, задача вроде не сложная, а не получается. Так что у кого будут идеи на счёт скрола, пишите пожайлуста... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2003, 15:15 |
|
||
|
Помогите подобрать событие или WM
|
|||
|---|---|---|---|
|
#18+
На OnSelectItem повесь scroll. Только отработай его 1 раз (boolean перменную заведи или как-то еще). eNose ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2003, 15:39 |
|
||
|
Помогите подобрать событие или WM
|
|||
|---|---|---|---|
|
#18+
Эти сообщения указаны в MSDN: WM_HSCROLL WM_VSCROLL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2003, 15:59 |
|
||
|
Помогите подобрать событие или WM
|
|||
|---|---|---|---|
|
#18+
procedure TForm2.FormShow(Sender: TObject); var i: integer; begin Edit1.Text:='99'; first:=true; for i:=0 to 1000 do begin Prom:=ListView1.Items.Add; Prom.Caption:=IntToStr(i); end; Prom:=ListView1.FindCaption(0, Edit1.Text, false, true, false); if Prom<>nil then begin Prom.Selected:=true; end; ListView1.SetFocus; end; procedure TForm2.ListView1SelectItem(Sender: TObject; Item: TListItem; Selected: Boolean); begin if first then begin first:=false; ListView1.Scroll(0, ListView1.Items.Item[Prom.index-1].Position.y); end; end; Не работает! Или я что-то не так делаю? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2003, 16:18 |
|
||
|
Помогите подобрать событие или WM
|
|||
|---|---|---|---|
|
#18+
Там ещё, есть свойство TopItem, по ниму позиционируй как нужно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2003, 17:00 |
|
||
|
Помогите подобрать событие или WM
|
|||
|---|---|---|---|
|
#18+
TopItem - read only property. Как при его помощи можно позиционировать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2003, 17:11 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=32306203&tid=2116222]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
92ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
75ms |
get tp. blocked users: |
2ms |
| others: | 228ms |
| total: | 447ms |

| 0 / 0 |
