Вопрос № 33517: Здравствуйте уважаемые Эксперты! Подскажите пожалуйста, как узнать инициатора действия при срабатывание действия в ActionList?...Вопрос № 33546: Здравствуйте, уважаемые эксперты. Проблема состоит в следующем: нужно узнать/установить данные из/в веб-формы(у). Например, веб-форма имеет два окна(текстовых поля) ввода и кнопку отправки. Нужно по нажатию кнопки узнать содержимое полей.
Очень н...Вопрос № 33558: Здравствуйте, уважаемые Эксперты.
Такая задача: надо написать генератор анкет, структура которых сохраняется в XML-файле. Как проще всего это сделать? Если возможно - киньте ссылку на примеры. Заранее благодарен....Вопрос № 33562: Здравствуйте уважаемые эксперты. Проблема в следующем: есть две формы, вторая создается при нажатии кнопки на первой (см. прилжение), но все кнопки на второй форме не действуют. Как это можно исправить? Заранее спасибо...
Вопрос № 33.517
Здравствуйте уважаемые Эксперты! Подскажите пожалуйста, как узнать инициатора действия при срабатывание действия в ActionList?
Отвечает: Zubex
Здравствуйте, Дружин Игорь Владимирович!
Пример как определить кто вызвал процедуру:
procedure TCustForm.acExecute(Sender:TObject);
begin
if Sender is TAction then TAction(Sender).Enabled:=False
else if Sender is TSpeedButton then TSpeedButton(Sender).Enabled:=False;
end;
--------- Если не знаешь что сказать - лучше промолчи...
Ответ отправил: Zubex (статус: 5-ый класс)
Отправлен: 18.01.2006, 11:23 Оценка за ответ: 4 Комментарий оценки: Спасибо, но мне не совсем понятен алгоритм. Ведь у процедуры Sender всегда будет TAction. Разве нет?
Вопрос № 33.546
Здравствуйте, уважаемые эксперты. Проблема состоит в следующем: нужно узнать/установить данные из/в веб-формы(у). Например, веб-форма имеет два окна(текстовых поля) ввода и кнопку отправки. Нужно по нажатию кнопки узнать содержимое полей.
Очень нужно!!!!!
Отвечает: Slava
Здравствуйте, Ataman N. N.!
Для обработки данных поступивших от формы можно использовать Web - модуль. File->New->Other и выбираем Web Server Application. Тип приложения лучше CGI Stand-alone executable.
При создании web формы: <form action='http://..../cgi-bin/наш модуль.exe' method='GET'> При нажатии кнопки Submit исполнится наш модуль, а информацию от формы он получит в виде параметров. Что бы обработать их можно использовать обработчик события:
procedure TWebModule1.WebModule1WebActionItemAction(........);
Request.QueryFields содержит строку полученную от формы.
Request.QueryFields.Values[Names[0]] - нужное значение в строке (тут могу ошибатся)
Response.Content := ' ' - содержимое возвращаемой страницы.
Ответ отправил: Slava (статус: 7-ой класс)
Отправлен: 18.01.2006, 22:00 Оценка за ответ: 5 Комментарий оценки: Очень хороший ответ - большое спасибо. Но проблема вот в чем. Не я создаю веб-форму. Мне нужно узнать передаваемые данные, или передать данные из/в уже созданной формы. Например, пользователь в окне поиска Rambler'a что-то напечатал, мне нужно во-первых узнать, что он нажал кнопку "Поиск", и во-вторых - что содержиться в текстовом поле.
Вопрос № 33.558
Здравствуйте, уважаемые Эксперты.
Такая задача: надо написать генератор анкет, структура которых сохраняется в XML-файле. Как проще всего это сделать? Если возможно - киньте ссылку на примеры. Заранее благодарен.
Отправлен: 18.01.2006, 21:47
Вопрос задал: Perez (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: sir henry
Здравствуйте, Perez!
Пример работы с XML находится в папке Дельфи Demos\WebSnap\А там увидите.
Ответ отправил: sir henry (статус: Академик)
Отправлен: 19.01.2006, 07:31 Оценка за ответ: 4 Комментарий оценки: Не то, что я ожидал, но спасибо за помощь
Вопрос № 33.562
Здравствуйте уважаемые эксперты. Проблема в следующем: есть две формы, вторая создается при нажатии кнопки на первой (см. прилжение), но все кнопки на второй форме не действуют. Как это можно исправить? Заранее спасибо
Отвечает: Jadd
Здравствуйте, Меркулов Алексей!
Первое. Из кода не очевидно что значит "не действуют". Потрудитесь расшифровать сие понятие. Второе. В данном случае вызов Update не обязателен. Жду разъяснений.
--------- Если в сердце дверь закрыта, нужно в печень постучаться
Ответ отправил: Jadd (статус: Специалист)
Отправлен: 18.01.2006, 22:38
Отвечает: One
Здравствуйте, Меркулов Алексей!
Попробуй написать для этих кнопок обработчики кликов ;)
--------- Компьютер должен работать, а человек - DOOMать.
Ответ отправил: One (статус: 1-ый класс)
Отправлен: 18.01.2006, 22:47 Оценка за ответ: 2
Отвечает: Лучников Юрий Владимирович
Здравствуйте, Меркулов Алексей!
Желательно бы видеть полный листинг обоих форм...
Задам вопросы по тому что вижу:
1. Из Unit2 вы вызываете создание объекта Form2. То есть самого себя. Хотя имена могли быть переназначены... Верно ли все?
2. TForm2 объект создан? Опции Enabled, Visible в состоянии истины?
Отвечает: romodos
Здравствуйте, Меркулов Алексей!
Вообще обчыно форма создается так: Application.CreateForm(TForm2, Form2);
Может стоит попробовать?
Удачи!
--------- FAQ me off!
Ответ отправил: romodos (статус: Практикант)
Отправлен: 19.01.2006, 05:44
Отвечает: Schmak
Здравствуйте, Меркулов Алексей!
Вообще-то если вы создавали форму не вручную то создание формы уже прописано в dpr файле и нет необходимости создавать её снова(а если пользователь нажмёт кнопку 2 раза то форма 2 раза и создастся?). Необходимо только показать её, что вы и сделали Form2.Show или Form2.ShowModal большой разницы в Вашем случае нет ведь форма появляется, если я правильно поянл. А насчёт того, что не работают кнопки, так обработчик кнопок должен бsnm во 2-ом uniteБ а его Вы не удосужились показать.
--------- Не всё то Windows, что висит!
Ответ отправил: Schmak (статус: Практикант)
Отправлен: 19.01.2006, 06:08
Отвечает: sir henry
Здравствуйте, Меркулов Алексей!
Если Вы спроектирвали форму в IDE, то там же должны прописать процедуру в OnClick кнопки, так что смотрите сами, почему не работает. Если же форма создается в рантайме с ноля, то у Вас должны и кнопки создаваться в рантайме и соответственно обработчик клика на кнопку тоже.
Из Вашего вопроса вообще непонятно ничего. Поэтому непонятно отчего не работают кнопки.
Ответ отправил: sir henry (статус: Академик)
Отправлен: 19.01.2006, 07:36 Оценка за ответ: 4
Отвечает: Сазонов Михаил Владимирович
Здравствуйте, Меркулов Алексей!
Обычно я делаю так:
1.Создаю форму Form2 и наполняю ее нужными компонентами. Отлаживаю проект.
2.Открываю проект с Form1 и добавляю к нему Form2.
2.В свойствах проекта надо Form2 перенести из колонки автосоздания в колонку достыпных.
3. Форму Form2 создаю
procedure TForm1.Button1Click(Sender: TObject);
begin
Form2:=TForm2.Create(Application);
Form2.Show; или Form2.ShowModal; в зависимости что нужно
............
здесь можно продолжать работать с Form1 после закрытия Form2
end;
Ответ отправил: Сазонов Михаил Владимирович (статус: 1-ый класс)
Отправлен: 19.01.2006, 09:39 Оценка за ответ: 5