Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 10.10.2012, 14:34
Amzi Amzi вне форума
Прохожий
 
Регистрация: 10.10.2012
Сообщения: 26
Репутация: 10
По умолчанию Редактируемое поле (ссылка)

Здравствуйте ,нужна помощь.
Задача заключается в том что,нужно поместить в редактируемое поле ссылку,нажать enter и ссылка стала кликабельной и открылась в браузере самой программы,есть идеи как это сделать?
Ответить с цитированием
  #2  
Старый 10.10.2012, 14:46
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
Радость

TEdit, OnKeyPress, TWebBrowser, Navigate();
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
Этот пользователь сказал Спасибо NumLock за это полезное сообщение:
Amzi (10.10.2012)
  #3  
Старый 10.10.2012, 15:20
Amzi Amzi вне форума
Прохожий
 
Регистрация: 10.10.2012
Сообщения: 26
Репутация: 10
По умолчанию

Можно по подробнее?
Ответить с цитированием
  #4  
Старый 10.10.2012, 15:27
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

добавить на форму TEdit и TWebBrowser, у TEdit создать обработчик события OnKeyPress, в нем проверить что нажат именно Enter. в случае успешной проверки вызвать у TWebBrowser метод Navigate() с передачей ему в качестве параметра значение свойства Text TEdit'а.
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
Этот пользователь сказал Спасибо NumLock за это полезное сообщение:
Amzi (10.10.2012)
  #5  
Старый 10.10.2012, 15:29
Amzi Amzi вне форума
Прохожий
 
Регистрация: 10.10.2012
Сообщения: 26
Репутация: 10
По умолчанию

Ок, спасибо попробую
Ответить с цитированием
  #6  
Старый 10.10.2012, 15:53
Edit1 Edit1 вне форума
Прохожий
 
Регистрация: 23.08.2012
Сообщения: 44
Репутация: 10
По умолчанию

Цитата:
Сообщение от Amzi
Здравствуйте ,нужна помощь.
Задача заключается в том что,нужно поместить в редактируемое поле ссылку,нажать enter и ссылка стала кликабельной и открылась в браузере самой программы,есть идеи как это сделать?
ShellExecute
Ответить с цитированием
  #7  
Старый 10.10.2012, 19:16
Amzi Amzi вне форума
Прохожий
 
Регистрация: 10.10.2012
Сообщения: 26
Репутация: 10
По умолчанию

Ссылка открывается после нажатия Enter мне нужно что-бы она застыла в Edit1 и стала кликабельной....
Код:
procedure TForm2.edit1KeyPress(Sender: TObject; var Key: Char);
begin
 if Key = #13 then
 ShellExecute(0, 'open', PChar(Edit1.Text), '', '', SW_SHOWNORMAL);
end;
Ответить с цитированием
  #8  
Старый 10.10.2012, 23:05
Аватар для YVitaliy
YVitaliy YVitaliy вне форума
Местный
 
Регистрация: 14.12.2011
Сообщения: 481
Версия Delphi: Borland Delphi7
Репутация: 17
По умолчанию

В onClick'е обрабатывай
Код:
Procedure TForm2.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then 
  begin
   Edit1.BorderStyle:=bsNone;
   Edit1.ReadOnly:=True;
   Edit1.Font.Style:=[fsUnderline];
   Edit1.Font.Color:=clBlue;
   ...........
end;

procedure TForm2.Edit1Click(Sender: TObject);
begin
 if Edit1.ReadOnly then
   begin
    ShellExecute(0, 'open', PChar(Edit1.Text), '', '', SW_SHOWNORMAL);
   end;
end;
Ответить с цитированием
Этот пользователь сказал Спасибо YVitaliy за это полезное сообщение:
Amzi (11.10.2012)
  #9  
Старый 11.10.2012, 01:46
Аватар для poli-smen
poli-smen poli-smen вне форума
Профессионал
 
Регистрация: 06.08.2012
Адрес: Кривой Рог
Сообщения: 1,791
Версия Delphi: Delphi 7, XE2
Репутация: 4415
По умолчанию

Цитата:
Сообщение от YVitaliy
В onClick'е обрабатывай
Код:
Procedure TForm2.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then 
  begin
   Edit1.BorderStyle:=bsNone;
   Edit1.ReadOnly:=True;
   Edit1.Font.Style:=[fsUnderline];
   Edit1.Font.Color:=clBlue;
   ...........
end;

Ещё можно добавить:
Код:
  Edit1.Cursor := crHandPoint;
А чтобы ещё и руку сделать более человеческой добавить:
Код:
Screen.Cursors[crHandPoint] := LoadCursor (0, IDC_HAND);

Или же можно вместо TEdit использовать TRichEdit который умеет подсвечивать гиперссылки: Подсветить ссылки в TRichEdit
Ответить с цитированием
Этот пользователь сказал Спасибо poli-smen за это полезное сообщение:
Amzi (11.10.2012)
  #10  
Старый 11.10.2012, 02:22
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

ТС ты надеялся, что получив ответ на одном форуме, на другом тебе скажут что-либо другое? Вроде ты уже написал, что разобрался и вновь задаёшь тот же вопрос.
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.
Ответить с цитированием
  #11  
Старый 11.10.2012, 09:42
Amzi Amzi вне форума
Прохожий
 
Регистрация: 10.10.2012
Сообщения: 26
Репутация: 10
По умолчанию

Цитата:
Сообщение от angvelem
ТС ты надеялся, что получив ответ на одном форуме, на другом тебе скажут что-либо другое? Вроде ты уже написал, что разобрался и вновь задаёшь тот же вопрос.
Я хотел получить ответ по быстрее поэтому написал на несколько форумов.Так-как здесь люди оказались по активнее,решил там дальше не развивать тему .
И да,разобрался с половиной задачи то-что было нужно ...

Последний раз редактировалось Amzi, 11.10.2012 в 09:44.
Ответить с цитированием
  #12  
Старый 11.10.2012, 10:12
Amzi Amzi вне форума
Прохожий
 
Регистрация: 10.10.2012
Сообщения: 26
Репутация: 10
По умолчанию

Найс спасибо большое!
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 16:40.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025