|
|
|
VISUAL C++ 6.0 , Control of class CListCtrl
|
|||
|---|---|---|---|
|
#18+
Подскажите, пожалуйста, как программно в контроле CListCtrl выделить , допустим, 300-ю строкуКонтрол заполнен 800-ми строками и содержит 5 столбцов В контроле осуществляется поиск, допустим согласно условию найдено в 300-ой строке, как пользователю выделить и показать её ? Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2004, 09:50 |
|
||
|
VISUAL C++ 6.0 , Control of class CListCtrl
|
|||
|---|---|---|---|
|
#18+
SetItem(LVITEM*) в маске указываешь, что будешь править select. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2004, 10:15 |
|
||
|
VISUAL C++ 6.0 , Control of class CListCtrl
|
|||
|---|---|---|---|
|
#18+
и про EnsureVisible не забудь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2004, 10:42 |
|
||
|
VISUAL C++ 6.0 , Control of class CListCtrl
|
|||
|---|---|---|---|
|
#18+
БОЛЬШОЕ СПАСИБО CEMb and TRACER . Проблема исчезла по Ваших подсказкаm Код: plaintext 1. 2. С помощью вышеуказанных операторов выделяется найденная строка в контроле ClistCtrl. Что не могу реализовать: 1.Выделение цветом тёмно-синим, сейчас же цвет –такой же как и фон диалогового окна Такой цвет обычно бывает после щелчка мышей на строке контрола. 2. Не закрывая д.о. изменяю содержимое искомой строки в контроле ClistCtrl. Найденная строка ( 67-ая ) при первом поиске осталась выделенной. При втором ( новом ) поиске найденная строка – 200-ая. Как снять выделение с 67-ой строки ? Если нехлопотно, подскажите. СПАСИБО. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2004, 22:12 |
|
||
|
VISUAL C++ 6.0 , Control of class CListCtrl
|
|||
|---|---|---|---|
|
#18+
1. не совсем понятно... 2. Если я правильно понял - надо найти все предыдущие выделения. (Гы, какой-то медицинский термин...) GetFirstSelectedItemPosition - находит первую выделенную POSITION pos = m_lView.GetFirstSelectedItemPosition(); а номер итема int nItem = m_lView.GetNextSelectedItem(pos); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2004, 10:22 |
|
||
|
VISUAL C++ 6.0 , Control of class CListCtrl
|
|||
|---|---|---|---|
|
#18+
1.К сожалению snapshot здесь или не реализованы или я не умею показывать. Цвет на найденной строке серого цвета, а хотелось бы тёмно-синего, как в предыдущем сеансе сказано или как в заголовках диалоговых окон, я так могу объяснить. 2.Проблему выделения найденной строки в контроле CListCtrl Изучаю на выведенном в него перечнем функций, которые входят В USER32.DLL – их там около 700 ( зависит от операционной системы - Win98 or WinXP) Допустим, я открыл диалоговое окно, нашёл одну функцию, потом ищу вторую не закрывая диалог. Окно, потом третью – сколько хочу. Поэтому после каждого поиска я курсор ставлю на нулевую строку и выделение с предыдущей найденной строки надо снять - как ? СПАСИБО ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2004, 13:08 |
|
||
|
VISUAL C++ 6.0 , Control of class CListCtrl
|
|||
|---|---|---|---|
|
#18+
Попробуй использовать SetSelectionMark() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2004, 13:26 |
|
||
|
VISUAL C++ 6.0 , Control of class CListCtrl
|
|||
|---|---|---|---|
|
#18+
1. Видимо, никак. В активном состоянии оно рисуется синим, как тока фокус потеряло - серым. 2. Так же, как и ставить, тока там где флаг, пишешь ноль (маска та же). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2004, 16:05 |
|
||
|
VISUAL C++ 6.0 , Control of class CListCtrl
|
|||
|---|---|---|---|
|
#18+
Чтобы выделение всегда было синим :-) нужно установить контролу свойство LVS_SHOWSELALWAYS. То есть в редакторе ресурсов галочку проставить (как она точно в 6-й студи называется не помню). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.07.2004, 13:32 |
|
||
|
VISUAL C++ 6.0 , Control of class CListCtrl
|
|||
|---|---|---|---|
|
#18+
Чтобы выделение всегда было синим :-) нужно установить контролу свойство LVS_SHOWSELALWAYS. То есть в редакторе ресурсов галочку проставить (как она точно в 6-й студи называется не помню).[SRC][/src] Птица там стояла. СПАСИБО за стремление помочь. К сожалению проблема не решена. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2004, 09:20 |
|
||
|
VISUAL C++ 6.0 , Control of class CListCtrl
|
|||
|---|---|---|---|
|
#18+
Чтобы выделение всегда было синим :-) нужно установить контролу свойство LVS_SHOWSELALWAYS. То есть в редакторе ресурсов галочку проставить (как она точно в 6-й студи называется не помню). Птица там стояла. СПАСИБО за стремление помочь. К сожалению проблема не решена. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2004, 09:27 |
|
||
|
VISUAL C++ 6.0 , Control of class CListCtrl
|
|||
|---|---|---|---|
|
#18+
По-моему, оно не может быть синим, это виндовский цвет. Всмысле, оно _может_сохранять_выделение_ (блин, опять какой-то медицинский термин...) Но оно будет серым (вкупе с вышесказанным, с точки зрения медицины - ужасс ) Или его вообще не может быть. Серый цыет - это цвет чего-то там неактивного.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2004, 10:26 |
|
||
|
VISUAL C++ 6.0 , Control of class CListCtrl
|
|||
|---|---|---|---|
|
#18+
a ti otrisovivai sam kontrol, v smisle rucikami i togda tsvet budet takoi kakoi tebe nado ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2004, 10:32 |
|
||
|
VISUAL C++ 6.0 , Control of class CListCtrl
|
|||
|---|---|---|---|
|
#18+
Код: plaintext я бы не против, конечно самому лучше, лучше кому - то подсказывать, чем просить. К сожалению я не на том УРОВНЕ СВОЕГО РАЗВИТИЯ, что вынужен просить. СПАСИБО ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2004, 13:12 |
|
||
|
VISUAL C++ 6.0 , Control of class CListCtrl
|
|||
|---|---|---|---|
|
#18+
Опиши, что у тебя сщас происходит. Подробно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2004, 14:57 |
|
||
|
VISUAL C++ 6.0 , Control of class CListCtrl
|
|||
|---|---|---|---|
|
#18+
CEMb , спасибо. Итак, чото происходит: 1. Contrl CListCtrl заполнен 647-ю строками – именами функций, которые входят в USER32.DLL 2. In control CEdit находится имя искомой функции ‘CloseWindow’ в контроле CListCtrl 3. К командной кнопке прикреплён программный код поиска. Поиск удачный, строка найдена , это 67 пункт. Она выделена, но цве её не такой тёмно-синий, когда мы щёлкаем на строке , допустим , на CComboBox , CEdit, CListBox или даже на єтом же CListCtrl – всё описанное ранее остаётся в силе. Цвет найденной и еленной строки совпадает с цветом фона диалогового окна. После щелчка левой клавишей мыши на этой строке выделение становится тёмно – синим – НОРМА. Какой код обеспечит такой цвет при нахождении соответсвующей строки ? 4. Сам код к командной кнопке: Код: plaintext 1. // попытка снять ( отменить ) выделение строк, ранее // найденных не закрывая диалоговое окно – допустим // пользователю надо найти 10 названий – не будет же он // каждый раз закрывать д.о. и вновь щёлкать на кнопке. // PS: так мне посоветовали, я попробовал Код: plaintext 1. 2. 3. 4. 5. 6. код поиска опускаю выделение найденной строки: Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2004, 19:05 |
|
||
|
|

start [/forum/topic.php?fid=57&fpage=440&tid=2034686]: |
0ms |
get settings: |
11ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
59ms |
get topic data: |
15ms |
get forum data: |
5ms |
get page messages: |
60ms |
get tp. blocked users: |
2ms |
| others: | 230ms |
| total: | 407ms |

| 0 / 0 |
