Премини към съдържанието
BoByS

Проблем при Borland Delphi

Препоръчан отговор


Привет на всички маняци на Паскал (като мен :huh:)!

Както знаем, Delphi е обектно-ориентираният аналог на езика Pascal!

Някой, който е запознат с езика може ли да ми помогне, понеже ми дава постоянно грешки на следните библиотеки: TFlatHintUnit, TFlatSpeedButtonUnit, TFlatEditUnit, TFlatCheckBoxUnit, ASLink. А именно, показва, че не съществуват. Честно казано, идея си нямам какво да направя, че да тръгнат. ;) Ползвам Borland Delphi 10.00 от 2006г.

Ами като цяло е това... Ако някой се е занимавал с ОО Паскал и има нещо неясно в поста ми, нека пише!

Поздрави и лека вечер!

Редактирано от BoByS (преглед на промените)

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Привет на всички маняци на Паскал (като мен :))!

Както знаем, Delphi е обектно-ориентираният аналог на езика Pascal!

Някой, който е запознат с езика може ли да ми помогне, понеже ми дава постоянно грешки на следните библиотеки: TFlatHintUnit, TFlatSpeedButtonUnit, TFlatEditUnit, TFlatCheckBoxUnit, ASLink. А именно, показва, че не съществуват. Честно казано, идея си нямам какво да направя, че да тръгнат. :) Ползвам Borland Delphi 10.00 от 2006г.

Ами като цяло е това... Ако някой се е занимавал с ОО Паскал и има нещо неясно в поста ми, нека пише!

Поздрави и лека вечер!

Указал ли си пътя до папката със сорсовете на тези компоненти ?

Сподели този отговор


Линк към този отговор
Сподели в други сайтове
Указал ли си пътя до папката със сорсовете на тези компоненти ?

Хъм, всички са в папка /lib. Случайно да ми кажеш откъде да сменя пътя? Оставил съм го по дефолт. Досега не съм използвал тези библиотеки, но сега ми се наложи. :)

Като грешка, изписва "[Pascal Fatal Error] Unit1.pas(7): F1026 File not found: 'TFlatHintUnit.dcu'", но това вече е ясно защо е...

Поздрави!

Сподели този отговор


Линк към този отговор
Сподели в други сайтове
Хъм, всички са в папка /lib. Случайно да ми кажеш откъде да сменя пътя? Оставил съм го по дефолт. Досега не съм използвал тези библиотеки, но сега ми се наложи. :whist:

Като грешка, изписва "[Pascal Fatal Error] Unit1.pas(7): F1026 File not found: 'TFlatHintUnit.dcu'", но това вече е ясно защо е...

Поздрави!

В Delphi 7 се отваря Tools - Environment Options - Library - Library path, и се добавя пътя до сорсовете.

Сподели този отговор


Линк към този отговор
Сподели в други сайтове
В Delphi 7 се отваря Tools - Environment Options - Library - Library path, и се добавя пътя до сорсовете.

Привет пак!

Ще взема да изтрия тази версия, която имам и да изтегля пълната седмица... Тази десятка е орязана и явно няма тези библиотеки, а са ми необходими. :) За сравнение, 10-та е 40 МВ, а 7 е 650 МВ. ;) Ще пиша пак, ако всичко е наред!

Поздрави!


Сподели този отговор


Линк към този отговор
Сподели в други сайтове
Привет пак!

Ще взема да изтрия тази версия, която имам и да изтегля пълната седмица... Тази десятка е орязана и явно няма тези библиотеки, а са ми необходими. :) За сравнение, 10-та е 40 МВ, а 7 е 650 МВ. ;) Ще пиша пак, ако всичко е наред!

Поздрави!

Ти трябва да си инсталираш допълнителните компоненти.

Предполагам го знаеш. Delphi си има дин стандартен набор компоненти, койтто може да се допълва.

Сподели този отговор


Линк към този отговор
Сподели в други сайтове
Ти трябва да си инсталираш допълнителните компоненти.

Предполагам го знаеш. Delphi си има дин стандартен набор компоненти, койтто може да се допълва.

Привет пак!

Да, това го знам! Общо взето си изтеглих едната библиотека: TFlatHintUnit.dcu. Вече не дава грешка. biggrin.gif Утре ще си намеря и останалите, които са ми необходими!

Много благодаря за помощта!

И между другото, и в Седмицата ги нямаше по дефолт... Язък за големината! :P

Поздрави!

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Привет, Ken!

Случайно да знаеш как да направя връзката от бутон към сайт? Т.е., при кликане на About > Webpage да изкарва url-a на съответния сайт в браузър? Търсих доста по интернет, но така и не можах да го направя. В крайна сметка се обръщам към всички в този форум! :lock:

Поздрави!

Сподели този отговор


Линк към този отговор
Сподели в други сайтове
Привет, Ken!

Случайно да знаеш как да направя връзката от бутон към сайт? Т.е., при кликане на About > Webpage да изкарва url-a на съответния сайт в браузър? Търсих доста по интернет, но така и не можах да го направя. В крайна сметка се обръщам към всички в този форум! :lock:

Поздрави!

На OnClick на бутона извикай процедурата BrowseURL('http://www.kaldata.com');

Нейния код е :

function BrowseURL(const URL: string): boolean;

var

  Browser: string;

begin

  Result := True;

  Browser := '';

  with TRegistry.Create do

  try

	RootKey := HKEY_CLASSES_ROOT;

	Access := KEY_QUERY_VALUE;

	if OpenKey('\htmlfile\shell\open\command', False) then

	  Browser := ReadString('');

	CloseKey;

  finally

	Free;

  end;

  if Browser = '' then

  begin

	Result := False;

	Exit;

  end;

  Browser := Copy(Browser, Pos('"', Browser) + 1, Length(Browser));

  Browser := Copy(Browser, 1, Pos('"', Browser) - 1);

  ShellExecute(0, 'open', PChar(Browser), PChar(URL), nil, SW_SHOW);

end;

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

@Ken, възможно ли е да ми предоставиш някакъв dpr-файл с използване на въпросната функция? Нещо не мога да я оправя. :|

Поздрави!

Сподели този отговор


Линк към този отговор
Сподели в други сайтове
@Ken, възможно ли е да ми предоставиш някакъв dpr-файл с използване на въпросната функция? Нещо не мога да я оправя. :|

Поздрави!

В uses добави Registry и ShellAPI.

Сподели този отговор


Линк към този отговор
Сподели в други сайтове
В uses добави Registry и ShellAPI.

С променливите вече всичко е наред. Но непрекъснато ми дава грешката: [Pascal Error] Les2.pas(61): E2003 Undeclared identifier: 'BrowseURL', при положение, че обявявам променливата. Където и да го направя, все дава грешки. А и не мога и не мога да намеря библиотеката за URL в Help-секцията...

Кодът, който използвам е следният:

procedure TForm1.MyWebpage1Click(Sender: TObject);


begin

  BrowseURL('http://www.kaldata.com');

end;


function BrowseURL(const URL: string): boolean;

var

  Browser: string;

begin

  Result := True;

  Browser := '';

  with TRegistry.Create do

  try

	RootKey := HKEY_CLASSES_ROOT;

	Access := KEY_QUERY_VALUE;

	if OpenKey('\htmlfile\shell\open\command', False) then

	  Browser := ReadString('');

	CloseKey;

  finally

	Free;

  end;

  if Browser = '' then

  begin

	Result := False;

	Exit;

  end;

  Browser := Copy(Browser, Pos('"', Browser) + 1, Length(Browser));

  Browser := Copy(Browser, 1, Pos('"', Browser) - 1);

  ShellExecute(0, 'open', PChar(Browser), PChar(URL), nil, SW_SHOW);

end;

Поздрави! :whist:

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Или премести функцията преди процедурата, или я декларирай във формата.

Сподели този отговор


Линк към този отговор
Сподели в други сайтове
Или премести функцията преди процедурата, или я декларирай във формата.

С преместването на функцията преди процедурата стана... biggrin.gif Трябва да черпя! :whist: Мерси много!!!

Поздрави и лек ден!

T.e. не точно преди. С

procedure TForm1.MyWebpage1Click(Sender: TObject);

function BrowseURL(const URL: string): boolean; и т.н.

и след това BrowseURL('url');

Редактирано от BoByS (преглед на промените)

Сподели този отговор


Линк към този отговор
Сподели в други сайтове
С преместването на функцията преди процедурата стана... biggrin.gif Трябва да черпя! :speak: Мерси много!!!

Поздрави и лек ден!

T.e. не точно преди. С

procedure TForm1.MyWebpage1Click(Sender: TObject);

function BrowseURL(const URL: string): boolean; и т.н.

и след това BrowseURL('url');

Ти си я вмъкнал в процедурата и така няма да е достъпна извън нея.

Извади я преди самата процедура, или я декларирай като функция от формата.

В Public секцията на формата добави декларацията:

  public

	{ Public declarations }

	function BrowseURL(const URL: string): boolean;

  end;
а в Implementation промени заглавието на :
	function TForm1.BrowseURL(const URL: string): boolean;

но я извади от процедурата преди това.

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Ето ме отново в тази темичка. :speak:

Реших проблема с един доста по-семпъл код. Ето го и него, за тези, на които им трябва!

В Uses слагаме shellapi, ако го няма.

Код на процедурата (между begin и end; ):

ShellExecute(0, 'open',

Pchar('http://url.com'),

nil, nil, SW_SHOWMAXIMIZED);

До Ken:

Възможно ли е да ми дадеш някакъв линк към сайт с библиотеки за Borland Delphi? По принцип ги намирам в Гугъл, но работата е доста тегава. При почти всяка задача са ми необходими нови и нови... И става доста кофти търсенето. :)

Поздрави!

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Регистрирайте се или влезете в профила си за да коментирате

Трябва да имате регистрация за да може да коментирате това

Регистрирайте се

Създайте нова регистрация в нашия форум. Лесно е!

Нова регистрация

Вход

Имате регистрация? Влезте от тук.

Вход

×

Информация

Поставихме бисквитки на устройството ви за най-добро потребителско изживяване. Можете да промените настройките си за бисквитки, или в противен случай приемаме, че сте съгласни с нашите условия за ползване.