Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.01.2014, 17:58   #1
kabardinec
Пользователь
 
Регистрация: 10.01.2014
Сообщений: 59
Восклицание Работа с ListView и реестром Windows

Уважаемые великодобродушные программисты.. помогите разобраться с ListView..

Код:
procedure TForm1.Button1Click(Sender: TObject);
const KEY_WOW64_64KEY = $0100;
var
  Item: TListItem;
  regOS: tregistry;
  Str: String;
  begin
    ListView1.Items.Clear;
       regOS := tregistry.create;
       regOS.Access:= KEY_WOW64_64KEY or KEY_ALL_ACCESS;
        begin
          regOS := TRegistry.Create;
           With regOS Do
            Begin
----------------------------------------------------------------------------------------
              regOS.RootKey:=HKEY_CURRENT_USER;
              regOS.OpenKey('Test',true);
              GetValueNames(ListView1.Items);
------------------------------------------------------------------------------------------
                Item := ListView1.Items.Add;
                Item.Caption := ('Текст1');
                Item.SubItems.Add('Текст2');
            end;
        End;
  end;
Вопрос: GetValueNames выдает ошибку, что типы не совместимы ([DCC Error] Unit1.pas(48): E2010 Incompatible types: 'TStrings' and 'TListItems').... Если ListView1 заменить на ListBox1, то все работает замечтательно.. Помогите разобраться кто знает...
kabardinec вне форума Ответить с цитированием
Старый 11.01.2014, 18:27   #2
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

чего тут разбираться, вам же черным по белому написали
Цитата:
Incompatible types: 'TStrings' and 'TListItems')
чего ж еще надо?
eval вне форума Ответить с цитированием
Старый 11.01.2014, 18:37   #3
kabardinec
Пользователь
 
Регистрация: 10.01.2014
Сообщений: 59
По умолчанию

Цитата:
Сообщение от eval Посмотреть сообщение
чего тут разбираться, вам же черным по белому написали

чего ж еще надо?
Отвечаю...
Мне нужно сделать так, что бы параметры определенного ключа реестра выводились в виде чекбоксов в ListView, и чтобы кликая по чекам выполнялись разные функции, т.е. удалить выбранный параметр. Изучая TRegistry понял, что нужно воспользоваться методом GetValueNames. Теперь не могу понять, как совместить этот метод GetValueNames и компонент ListView.
kabardinec вне форума Ответить с цитированием
Старый 11.01.2014, 18:56   #4
doktor255
Заблокирован
 
Регистрация: 31.03.2011
Сообщений: 976
По умолчанию

Замени ListView.Items например на ListBox.Items. Или StringList. Напрямую залить Strings в ListView не получится. Путаешь ListItem со String.

Последний раз редактировалось doktor255; 11.01.2014 в 19:04.
doktor255 вне форума Ответить с цитированием
Старый 11.01.2014, 18:56   #5
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

комментирую..
Цитата:
Мне нужно сделать так, что бы параметры определенного ключа реестра выводились в виде чекбоксов в ListView
ну тут надо чтобы программист код написал, без кода, как и программиста, не получится

Цитата:
Изучая TRegistry понял, что нужно воспользоваться методом GetValueNames. Теперь не могу понять, как совместить этот метод GetValueNames и компонент ListView
отлично, что для этого сделали?
eval вне форума Ответить с цитированием
Старый 11.01.2014, 19:05   #6
kabardinec
Пользователь
 
Регистрация: 10.01.2014
Сообщений: 59
По умолчанию

Цитата:
Сообщение от eval Посмотреть сообщение
комментирую..
ну тут надо чтобы программист код написал, без кода, как и программиста, не получится

отлично, что для этого сделали?
слушайте, если вы профессионал и знаете что да как...это не значит что все это знают... мы тоже учимся программировать, как и вы начинали свою деятельность...в этом деле я новичок и самоучка...советчиков кроме поиска и форума нету.... все что у меня получилось, код, я в самом начале написал... дальше мысль обрывается... поэтому и пишу в форуме с просьбой о помощи....
kabardinec вне форума Ответить с цитированием
Старый 11.01.2014, 19:08   #7
kabardinec
Пользователь
 
Регистрация: 10.01.2014
Сообщений: 59
По умолчанию

Цитата:
Сообщение от doktor255 Посмотреть сообщение
Замени ListView.Items например на ListBox.Items. Или StringList. Напрямую залить Strings в ListView не получится. Путаешь ListItem со String.
Мне в конечном итоге нужно чтоб в ListView данные были... с ListBox-ом начинал, разобрался.. не все там возможно, что хочу сделать... поэтому ListView..
kabardinec вне форума Ответить с цитированием
Старый 11.01.2014, 19:18   #8
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

а что, если вы новичок то можно не напрягать голову?

Цитата:
все что у меня получилось, код, я в самом начале написал
это не вы написали, т.к. если бы вы то не было бы самого вопроса
а вот тут и надо напрячь то самое

что такое Incompatible types проштудировали хотя бы?
eval вне форума Ответить с цитированием
Старый 11.01.2014, 19:25   #9
kabardinec
Пользователь
 
Регистрация: 10.01.2014
Сообщений: 59
По умолчанию

Цитата:
Сообщение от eval Посмотреть сообщение
а что, если вы новичок то можно не напрягать голову?

это не вы написали, т.к. если бы вы то не было бы самого вопроса
а вот тут и надо напрячь то самое

что такое Incompatible types проштудировали хотя бы?
а я что голову не напрягаю?? я над этим почти неделю уже работаю... начинал со StringList, перешел на ListBox, теперь дошел до ListView...это ошибка о том что типы не совместимы..там string а там listitem...
kabardinec вне форума Ответить с цитированием
Старый 11.01.2014, 19:42   #10
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

типы конечно не совместимы но совсем не эти... у вас в ошибке они уже написаны, тут вопрос не в том что внутри коллекции, а в том что методу надо, а надо ему совсем не то что вы даете, ну вощем это уже по десятому кругу ...

следовательно есму надо дать то что он хочет, хоть разбейся а дай, иначе не будет дружить с новичками ни в какую.
вот вы про StringList упомянули, а его почему метод принимает, выяснили?
eval вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с реестром Windows XP в С++ Jtt Общие вопросы C/C++ 2 05.07.2011 20:34
Работа с системным реестром Windows XP DENIS_1992 Общие вопросы Delphi 5 02.06.2011 11:28
Работа с реестром windows Vlad2104 Помощь студентам 1 11.06.2010 21:17
Cохранить в файл значение заданного имени, тип REG_BINARY. Работа с реестром Windows. DelphiFun Общие вопросы Delphi 9 01.08.2007 21:36