Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Delphi


Информационный Канал Subscribe.Ru

RusFAQ.ru: Программирование на C++ Builder / Delphi

Выпуск № 419
от 29.11.2004, 15:00

Администратор:
Имя: Калашников О.А.
URL: Информационный ресурс
ICQ: 68951340
Россия, Москва
О рассылке:
Задано вопросов: 1980
Отправлено ответов: 4448
Активность: 224.6 %
[Задать вопрос >>][Регистрация эксперта >>]
[Поиск в базе][Обсудить на форуме]


 Список экспертов, ответы которых опубликованы в данном выпуске

lerthe61
Статус: Начальный
Общий рейтинг: 129.41
[Подробней >>]
Boriss
Статус: Профессиональный
Общий рейтинг: 155.75
URL: Программирование на Паскале
[Подробней >>]
sir henry
Статус: Профессиональный
Общий рейтинг: 164.14
[Подробней >>]
 
Alien
Статус: Опытный
Общий рейтинг: 126.08
[Подробней >>]


 Краткий перечень вопросов

Вопрос № 1968. Помогите мне разобраться с TreeView'ом как получать уникальные номера элементов для дальнейшего обращениея к ним, те мне надо добавлять итемы в одну ветку потом в др.. потом мне надо добавить в одну из ранних (на пример) так вот как мне обратиться к ... (ответов: 1)
Вопрос № 1969. Уважаемые эксперты как можно узнать индекс ярлыка на рабочем столе для манипуляции ... (ответов: 2)
Вопрос № 1970. Добрый день!!! У меня вот какая проблема: На форме 6 Edit`ов и 6 CheckBox`ов. Нужно при нажатии, например, на 3 CheckBox выполнить Edit3.Enabled ... и т. д. Пробывал написать процедуру (внизу) не работет. Подскажите пожалуйста, что не так. Если можно... (ответов: 3)
Вопрос № 1971. Уважаемые эксперты! Я программист начинающий, поэтому не сердитесь на ламерский вопрос: Есть БД Access подключаюсь к ней через ADO. В БД две таблицы связанны отношением "один ко многим" по ключевому полю первой таблицы. Как с помощью ADO ... (ответов: 1)

Вопросов: 4, ответов: 7


 Вопрос № 1968

Помогите мне разобраться с TreeView'ом
как получать уникальные номера элементов для дальнейшего обращениея к ним, те мне надо добавлять итемы в одну ветку потом в др.. потом мне надо добавить в одну из ранних (на пример) так вот как мне обратиться к конкретнкой ветке?
по логике надо запомнить ее ид, но как его узнать и как потом через него к этой ветке обращаться?
а если использовать поле data то как найти эту ветку с определённым значением data и добавить туды ещё итемов??
Delphi 7



Вопрос отправлен: 24.11.2004, 23:19
Отправитель: Agny (agforum@mail.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает lerthe61

Доброе время суток, Agny!
В приложении есть небольшой кусочек кода который работает с TTreeView-ом. Там есть добавление элемента внутрь выделенного, удаление выделенного (и всех детей), а также поиск узла по его имени.


Приложение:

Ответ отправлен: 25.11.2004, 11:47
Отправитель: lerthe61


 Вопрос № 1969

Уважаемые эксперты как можно узнать индекс ярлыка на рабочем столе для манипуляции



Вопрос отправлен: 25.11.2004, 22:07
Отправитель: Михан (timon84@bk.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает Boriss

Здравствуйте, Михан!
С "Рабочим столом" можно работать, как с объектом типа ListView, только используя WinAPI (с помощью LVM_* функций), а не класс-обертку TListView. В этом ListView хранятся все необходимые параметры ярлыков.

Ответ отправлен: 26.11.2004, 16:28
Отправитель: Boriss


Отвечает sir henry

Добрый день, Михан!
Вопрос непонятен. Просканируйте папку "Рабочий стол" и манипулируйте ярлыками сколько влезет - это обычные файлы. А вот манипулировать ярлыками типа "Мой компьютер" дурной тон.

Ответ отправлен: 26.11.2004, 05:41
Отправитель: sir henry


 Вопрос № 1970

Добрый день!!!
У меня вот какая проблема:
На форме 6 Edit`ов и 6 CheckBox`ов. Нужно при нажатии, например, на 3 CheckBox выполнить Edit3.Enabled ...
и т. д. Пробывал написать процедуру (внизу) не работет.
Подскажите пожалуйста, что не так. Если можно рабочий пример
procedure TForm3.CheckBoxChange(I: integer);
var Edits: Array [1..5] of TEdit;
Check: Array [1..5] of TCheckBox;
begin
If (Check[I] as TCheckBox).Checked then
begin
(Edits[I] as TEdit).Enabled:= TRUE;
(Edits[I] as TEdit).Color:= clWindow;
end
else
begin
(Edits[I] as Tedit).Enabled:= FALSE;
(Edits[I] as TEdit).Color:= clSilver;
end;
end;



Вопрос отправлен: 26.11.2004, 05:42
Отправитель: Lo4der (Lo4der@mail.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает lerthe61

Приветствую Вас, Lo4der!
А почему вы собственно говоря думаете что это должно работать? Также неплохо было бы почитать FAQ "Как правильно задавать вопросы", так как вы не написали что именно происходит при выполнении вашей процедуры (несложно догадаться правда что там будет Access Violation :). А все дело в том что вы пытаетесь сделать достаточно абсурдную вещь - изменить свойства несозданных компонентов. Сейчас я попробую вам обьяснить:
procedure TForm3.CheckBoxChange(I: integer);
var
Edits: Array [1..5] of TEdit;
Check: Array [1..5] of TCheckBox;
// Здесь вы обьявили ЛОКАЛЬНО два массива с необходимыми вам
//обьектами, но ведь сами обьекты еще не созданы и
//следовательно и память под них не выделена
// Вероятней всего, по тому что вы написали, нужно было
//ГЛОБАЛЬНО создать эти масивы и заполнять по мере создания компонентов
begin
If (Check[I] as TCheckBox).Checked then begin
(Edits[I] as TE dit).Enabled:= TRUE;
(Edits[I] as TEdit).Color:= clWindow;
end else begin
(Edits[I] as Tedit).Enabled:= FALSE;
(Edits[I] as TEdit).Color:= clSilver;
end;
//Здесь в целом все правильно (кстати можно обойтись без приведения типов)
end;

Ответ отправлен: 26.11.2004, 10:55
Отправитель: lerthe61


Отвечает Alien

Доброе время суток, Lo4der!
Если уш ты к контролам по индексам хошь обращаться то делай FindControl а то ты так определил массив TEdit'ов которых реально не существует. Лучше так:
Edit1.Enabled:=CheckBox1.Checked;

Ответ отправлен: 26.11.2004, 06:23
Отправитель: Alien


Отвечает Boriss

Доброе время суток, Lo4der!
При желании эти CheckBoxes можно определить как массив, программно разместить на форме (или где), и определить для них один обработчик

Приложение:

Ответ отправлен: 26.11.2004, 16:39
Отправитель: Boriss


 Вопрос № 1971

Уважаемые эксперты! Я программист начинающий, поэтому не сердитесь на ламерский вопрос:
Есть БД Access подключаюсь к ней через ADO. В БД две таблицы связанны отношением "один ко многим" по ключевому полю первой таблицы.
Как с помощью ADO компонент реализовать модификацию, удаление и добавление записей чтобы соблюдалась ссылочная целостность?
Помогите пожалуйста, покажите хоть кусочек кода!!! А то я до сих пор работала с IB, а с этим ну не выходит никак.
Заранее спасибо!



Вопрос отправлен: 26.11.2004, 12:29
Отправитель: tanyxa (tanyxa@ua.fm)

[Следующий вопрос >>] [Список вопросов]

Отвечает sir henry

Доброе время суток, tanyxa!
Это лучше всего сделать в программе Access. Там это просто. Создаешь отношения и ставишь галочки на "Обеспечение целостности данных". Тогда сама база будет следить за этим делом.
Модификация, удаление и т.п. операции можно проводить как обычно SQL командами.


Ответ отправлен: 26.11.2004, 13:47
Отправитель: sir henry



Форма отправки вопроса

Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.

(C) 2002-2003 Команда RusFAQ.ru.

 Персональные данные

Ваше имя:

Ваш e-mail:

Опубликовать мой e-mail в рассылке


 Вопрос и дополнение

Ваш вопрос:


Приложение (если необходимо):


Получить ответов:


 Выбор рассылки

Программисту
Assembler (20)
C / C++ (18)
Perl (4)
Builder / Delphi (17)
Pascal (19)
Basic / VBA (11)
Java / JavaScript (5)
PHP (16)
Криптография (6)
WinAPI (18)
Радиоэлектроника (13)
Пользователю
Windows 95/98/Me (40)
Windows NT/2000/XP (59)
"Железо" (39)
Поиск информации (21)
Администратору
Windows NT/2000/XP (33)
Linux / Unix (17)
Юристу
Гражданское право (11)
Семейное право (5)
Трудовое право (9)
КоАП (5)

Отправить вопрос всем экспертам выбранной рассылки.





http://subscribe.ru/
http://subscribe.ru/feedback/
Подписан адрес:
Код этой рассылки: comp.soft.prog.delphiplus
Отписаться

В избранное