Member
Статус: Не в сети Регистрация: 14.08.2003 Откуда: Питер
Подскажите плиз как к ячейке прикрутить ComboBox и чтобы при считывании ячейки была бы одна из итемсов комбобокса?
Либо подскажите модифицированный StringGrid в ячейки которого можно прикручивать ComboBox, Images и CheckBox
В общем если не влом то посоветуйте качественный компонентик без гемора. Можно без сырца.
_________________ Лучшая зашита - это нападение.
Последний раз редактировалось Halfback 13.06.2005 15:06, всего редактировалось 1 раз.
Процедура он CellClick или OnKeyDown-------------------------- ------------------ for k:=0 to GCards.SelectedRows.Count -1 do begin
if GCards.SelectedRows.Count>1 then DsCard.DataSet.GotoBookMark(pointer(GCards.SelectedRows.Items[k])); Value:=GCards.DataSource.DataSet.FieldByName('C_Id').AsInteger; // Проверяем, если ли уже такой номер в списке // и если нет - добавляем , а если есть - удаляем его из списка. IF ListSelect.Count > 0 Then IF ListSelect.IndexOf(Pointer(Value)) >=0 Then ListSelect.Delete(ListSelect.IndexOf(Pointer(Value))) Else Begin ListSelect.Add(Pointer(Value)); End Else Begin ListSelect.Add(Pointer(Value)); End;
End; // Обновляем grid и отображаем количество выбранных записей GCards.Columns[0].Grid.Refresh; end;
Есть такая проблема:
посылаю POST запрос следующим образом:
IdHTTP1.HandleRedirects := true;
ans := idHTTP1.Post('http://***.ru/***/', data);
Но вместо ответа мне возвращается "ошибка" "HTTP/1.1 302" Т.е. редирект на другую страницу.
Проблема в том, что в ans не только не заносится сама возвращаемая страница, но даже и сам ответ сервера, т.е. я даже вручную не могу обработать редитрект, проанализировав ответ и сделав новый запрос уже на нужную станицу. Не подскажете как же все таки можно обработать этот редирект?
Member
Статус: Не в сети Регистрация: 14.08.2003 Откуда: Питер
Есть такая процедурка по удалению строки из грида при нажатии на клаве кнопки Delete:
Код:
procedure TForm1.GV2OnKeyPress(Sender: TObject; var Key: Char); begin if Ord(Key) = 46 then begin GridView2.DeleteRow(GridView2.SelectedRow); GridView2.Refresh; end else end;
Только вот почему-то работает только одна кнопка Delete из двух (работает та, что в правом нижнем углу клавы рядом со вторым Enter).
А вот та что находиться у Insert'а не работает. Может кто знает в чем дело?
Member
Статус: Не в сети Регистрация: 14.08.2003 Откуда: Питер
Подскажите, как из другого юнита обработать событие Form1OnCloseQuery(Sender: TObject; var CanClose: Boolean);
В место Sender вроде мне надо писать Form1 а что потом?
Member
Статус: Не в сети Регистрация: 03.01.2004 Откуда: Питер
Вот давно интересует есть ли способ быстро и просто сохранить значеия и положение всех VCL компонентов(текст в едитах, значения чекбоксов, радиобаттонов и т.д.) при выходи из приложения, а при запуске этого приложения их загрузить? Или можно только напрямую в файл сохранять значение каждого элемента приложения? (Ну или через ini файл)
_________________ Здесь так мало тех, с кем легко говорить,
Еще меньше тех, с кем не страшно молчать (c)
Advanced member
Статус: Не в сети Регистрация: 09.06.2003 Откуда: USSR
Lord_of_Darkness писал(а):
Вот давно интересует есть ли способ быстро и просто
Нет
Lord_of_Darkness писал(а):
Или можно только напрямую в файл сохранять значение каждого элемента приложения?
Да
Хотя есть и обходной путь, но довольно таки сложный с влезанием в дебри VCL.
Хотя если тебя интересует только лишь, значение и состояние (а не координаты! на форме) то это запросто делается. Берется RX Library, там берется компоненты TFromStorage, в нем выбираются какие компоненты и какие свойства от них сохранять. Далее настраивает куда в .ini или в реест.
Member
Статус: Не в сети Регистрация: 02.03.2005 Откуда: Владивосток
Помогите разобраться с HTTPS !!!
Пишу прогу на Delphi 2005, использую компоненту TCPClient, задача такая - автоматизировать ввод и отправку данных на сервер, т.е. в браузере открывается окно с полями для ввода разных данных, заполняеш и нажимаеш типа ВСЕ, но так как операцию приходится повторять много-много раз поставили задачу(правда сказали, если по силам) написать прогу которая в автомате запрашивала страницы и отправляла нужные данные.
С запросом страниц и заполнением данных я уже разобрался, но выход на некоторые страницы осуществляется через HTTPS, т.е. защищен и данные передаются не в читабельном виде, а какой-то набор символов.
Вопрос таков - можно какнить в прогу встроить поддержку этого протокола, и самому шифровать и рассшифровывать данные ???
Member
Статус: Не в сети Регистрация: 14.08.2003 Откуда: Питер
Есть вопрос: Имееься такая процедура:
Код:
procedure ShowSaveProgress(start: boolean); var pos:byte; progress: TALProgressBar; SaveDialog: TForm; tm: TTimer; begin // if start=true then begin SaveDialog:= CreateMessageDialog('This is a test message.', mtInformation, []); progress:= TALProgressBar.Create(SaveDialog); tm:= TTimer.Create(SaveDialog); with SaveDialog do try Caption := 'Dialog Title' ; Width:= 500; Height := 100; Top:= 90;
With progress do begin Parent := SaveDialog; top := 50; Left := 10; Width:=475; Height:= 20; progress.Min:=0; progress.Max:=100; progress.Position:= pos; end; with tm do begin tm.Interval:=60; tm.Enabled:=true; //tm.OnTimer(); end; Case ShowModal of ID_YES: ;//çäåñü Âàø êîä ïîñëå òîãî êàê äèàëîã áóäåò çàêðûò ID_NO: ; end; finally tm.Free; progress.Free; Free; end; end; end;
Как видно я создаю диалоговое окно, а в нем модифицированный ProgressBar (progress) и Timer (tm) для управления процессом индикации. Так вот как сделать обработчик типа tm1Timer(sender: TObject) чтобы в нем увеличивать pos с каждым интервалом времени на единицу (inc(i)) ???
Member
Статус: Не в сети Регистрация: 02.03.2005 Откуда: Владивосток
Halfback писал(а):
Есть вопрос: ...Так вот как сделать обработчик типа tm1Timer(sender: TObject) чтобы в нем увеличивать pos с каждым интервалом времени на единицу (inc(i)) ???
Добавляеш TActionList, создаеш там Action и далее примерно так
Код:
Var i:integer; ...
tm.OnTimer:=Action1Execute; ...
procedure TForm1.Action1Execute(Sender: TObject); begin Inc(i); end;
Member
Статус: Не в сети Регистрация: 14.08.2003 Откуда: Питер
Aleksoid1978Yuric74 Вы не поняли суть вопроса. Я форму, на которой потом создаю таймер и прогрессбар - всё это создаю динамически в юните, который к TForm1 не имеет никакого отношения. Так вот мне вот что надо: когда я создаю форму мне надо также создать обработчик tmOnTimer, который будет каждую секунду pos на единицу. Так вот как его (обработчик) создать?
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения