Часовой пояс: UTC + 3 часа




Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 2317 • Страница 40 из 116<  1 ... 37  38  39  40  41  42  43 ... 116  >
  Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 

Member
Статус: Не в сети
Регистрация: 20.08.2003
Откуда: Архангельск,РФ
Фото: 11
Люди помогите скиньте прогу с этого сайта http://delphiworld.narod.ru/dw.html на мыло
arcon56142@rambler.ru
В 1 большом архиве, а то у меня с него вообще ничего не качается. буду очень благодарен.

_________________
Dell Venue 11 pro 7130 | SGS-III | Samsung Gear fit



Партнер
 

Member
Статус: Не в сети
Регистрация: 14.08.2003
Откуда: Питер
Подскажите плиз как к ячейке прикрутить ComboBox и чтобы при считывании ячейки была бы одна из итемсов комбобокса?
Либо подскажите модифицированный StringGrid в ячейки которого можно прикручивать ComboBox, Images и CheckBox
В общем если не влом то посоветуйте качественный компонентик без гемора. Можно без сырца.

_________________
Лучшая зашита - это нападение.


Последний раз редактировалось Halfback 13.06.2005 15:06, всего редактировалось 1 раз.

 

Member
Статус: Не в сети
Регистрация: 20.11.2003
Halfback Поди разбери - чего тебе нужно? В DBGrid'e нарисовать CheckBox, чтоли?

Код:
procedure TFEditCards.DBGrid1DrawColumnCell(Sender: TObject;
  const Rect: TRect; DataCol: Integer; Column: TColumn;
  State: TGridDrawState);
Var Style   : Integer;   
Begin
    IF CompareText(Column.FieldName , 'Chk') = 0 Then
     begin
     IF ListSelect.IndexOf(Pointer(QCards.FieldByName('C_ID').AsInteger)) >= 0
        Then Style := DFCS_CHECKED
        Else Style := DFCS_BUTTONCHECK;

    DrawFrameControl(TDBGrid(Sender).Canvas.Handle, Rect, DFC_BUTTON, Style);
    end;

End;


Процедура он 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;


 

Member
Статус: Не в сети
Регистрация: 14.08.2003
Откуда: Питер
Mike-L
Сенкс, но я нашел просто офигенный компонент: GridView. Как раз то, что мне надо.
Скачать

_________________
Лучшая зашита - это нападение.


 

Member
Статус: Не в сети
Регистрация: 08.01.2005
Есть такая проблема:
посылаю POST запрос следующим образом:
IdHTTP1.HandleRedirects := true;
ans := idHTTP1.Post('http://***.ru/***/', data);
Но вместо ответа мне возвращается "ошибка" "HTTP/1.1 302" Т.е. редирект на другую страницу.
Проблема в том, что в ans не только не заносится сама возвращаемая страница, но даже и сам ответ сервера, т.е. я даже вручную не могу обработать редитрект, проанализировав ответ и сделав новый запрос уже на нужную станицу. Не подскажете как же все таки можно обработать этот редирект?


 

Member
Статус: Не в сети
Регистрация: 08.01.2005
Все, решил свою проблему. Страницу на которую происходит редирект можно получить при помощи idHTTP1.Response.Location.


 

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
Статус: Не в сети
Регистрация: 11.11.2004
Откуда: Челябинск
смотри OnKeyDown и VK_DELETE

_________________
пишу я программу... и вдруг на клавиатуру выползает bug, буквально


 

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
Статус: Не в сети
Регистрация: 03.01.2004
Откуда: Питер
Ray Adams
Цитата:
Хотя если тебя интересует только лишь, значение и состояние (а не координаты! на форме)

Цитата:
Берется RX Library, там берется компоненты TFromStorage

Именно, пасиб.

_________________
Здесь так мало тех, с кем легко говорить,
Еще меньше тех, с кем не страшно молчать (c)


 

Advanced member
Статус: Не в сети
Регистрация: 09.06.2003
Откуда: USSR
Соврал TFormStorage кажись, а не TFromStorage


 

Member
Статус: Не в сети
Регистрация: 02.03.2005
Откуда: Владивосток
Помогите разобраться с HTTPS !!!

Пишу прогу на Delphi 2005, использую компоненту TCPClient, задача такая - автоматизировать ввод и отправку данных на сервер, т.е. в браузере открывается окно с полями для ввода разных данных, заполняеш и нажимаеш типа ВСЕ, но так как операцию приходится повторять много-много раз поставили задачу(правда сказали, если по силам) написать прогу которая в автомате запрашивала страницы и отправляла нужные данные.
С запросом страниц и заполнением данных я уже разобрался, но выход на некоторые страницы осуществляется через HTTPS, т.е. защищен и данные передаются не в читабельном виде, а какой-то набор символов.
Вопрос таков - можно какнить в прогу встроить поддержку этого протокола, и самому шифровать и рассшифровывать данные ???


 

Member
Статус: Не в сети
Регистрация: 15.04.2004
Откуда: Москва
Можно. Сходи на torry.ru и скачай нормальный компонент для работы по HTTP/HTTPS протоколам.

_________________
Цель жизни - d20 по жизни...


 

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
Статус: Не в сети
Регистрация: 20.11.2003
Halfback Ты хочешь написать свой компонент?? Если нет - то пользуйся просто TTimer + TProgressBar...


 

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
Статус: Не в сети
Регистрация: 16.11.2004
Откуда: Пенза
Aleksoid1978
Зачем так сложно, вот другой код, назначение обработчика событий в run-time.
Код:
type
  TForm1 = class(TForm)
    Timer1: TTimer;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
    procedure MyTimer(Sender: TObject);
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  i:integer;

implementation

{$R *.DFM}

procedure TForm1.MyTimer(Sender: TObject);
begin
  i:=i+1;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Timer1.OnTimer:=MyTimer;
end;


 

Member
Статус: Не в сети
Регистрация: 14.08.2003
Откуда: Питер
Aleksoid1978 Yuric74
Вы не поняли суть вопроса. Я форму, на которой потом создаю таймер и прогрессбар - всё это создаю динамически в юните, который к TForm1 не имеет никакого отношения. Так вот мне вот что надо: когда я создаю форму мне надо также создать обработчик tmOnTimer, который будет каждую секунду pos на единицу. Так вот как его (обработчик) создать?

_________________
Лучшая зашита - это нападение.


Показать сообщения за:  Поле сортировки  
Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 2317 • Страница 40 из 116<  1 ... 37  38  39  40  41  42  43 ... 116  >
-

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB | Kolobok smiles © Aiwan