Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.10.10;
Скачать: CL | DM;

Вниз

получения шапки программы через OpenDialog   Найти похожие ветки 

 
Hapastiks   (2010-07-16 11:52) [0]

На одном из форумов я задал этот вопрос, ответа не дали, пришел к вам.
Собствено вопрос: как получить шапку программы через OpenDialog


 
Anatoly Podgoretsky ©   (2010-07-16 11:53) [1]

Что такое шапка программы


 
Юрий Зотов ©   (2010-07-16 12:09) [2]

if OpenDialog.Execute then
 OpenDialog.FileName := Application.ExeName
else
 raise Exception.Create("Без шапки программа работать не может");

:o)


 
Palladin ©   (2010-07-16 12:11) [3]

ребенок только учится говорить, смысла слов правда не понимает и предложения получаются безсмысленными


 
Учсуд   (2010-07-16 13:08) [4]

через опендиалог шапку не получить. можно только шарфик.


 
azamatufa ©   (2010-07-16 13:24) [5]

Даже меня (ламера ужасного) "шапка" улыбнула)))


 
Dennis I. Komarov ©   (2010-07-16 15:28) [6]

свежий орех...


 
12 ©   (2010-07-16 15:41) [7]

думаю, интересует
версия, язык, производитель, вообщем, все что доступно в проводнике.

не заморачивался никогда, единственное что надо мне - последнее число
отсюда код, но можно и еще чего накопать

function GetFileVer(FileName: string):Integer;
var
 Info: Pointer;
 InfoSize: DWORD;
 FileInfo: PVSFixedFileInfo;
 FileInfoSize: DWORD;
 Tmp: DWORD;
begin
 result := -1;
 InfoSize := GetFileVersionInfoSize(PChar(FileName), Tmp);
 GetMem(Info, InfoSize);
 try
   GetFileVersionInfo(PChar(FileName), 0, InfoSize, Info);
   VerQueryValue(Info, "\", Pointer(FileInfo), FileInfoSize);
   result := FileInfo.dwFileVersionLS and $FFFF;
 finally
   FreeMem(Info, FileInfoSize);
 end;
end;


 
Германн ©   (2010-07-16 17:42) [8]

Может шапкой он называет хинт?


 
Hapastiks   (2010-07-17 10:44) [9]

Под шапкой я имел в виду caption программы типа "Form1" или "Opera"
P.S.Я по рускому ни бум-бум от и карявыє предложения получаются


 
Leonid Troyanovsky ©   (2010-07-17 12:08) [10]


> Hapastiks   (17.07.10 10:44) [9]

> Под шапкой я имел в виду caption программы типа "Form1"

Тема OpenDialog & caption не раскрыта.

--
Regards, LVT.


 
Германн ©   (2010-07-17 14:44) [11]


> Под шапкой я имел в виду caption программы типа "Form1"
> или "Opera"

А OpenDialog тут при чем?


 
Virgo_Style ©   (2010-07-17 20:46) [12]

*жмет на телепаторе кнопку Random*

OpenDialog.Title ?


 
Германн ©   (2010-07-17 20:58) [13]


> Virgo_Style ©   (17.07.10 20:46) [12]

Думаю мимо.


 
Virgo_Style ©   (2010-07-17 21:30) [14]


> Германн ©   (17.07.10 20:58) [13]


Морской бой? :-)


 
Германн ©   (2010-07-17 22:01) [15]


> Морской бой? :-)

Не на что :)


 
Демо ©   (2010-07-18 11:44) [16]


> Hapastiks   (16.07.10 11:52) 
> На одном из форумов я задал этот вопрос, ответа не дали,
>  пришел к вам. Собствено вопрос: как получить шапку программы
> через OpenDialog


TOpenDialog для этого не нужен.
Используй Application.Title.


 
Leonid Troyanovsky ©   (2010-07-18 11:56) [17]


> Демо ©   (18.07.10 11:44) [16]

> Используй Application.Title.

И где тут "Opera".

--
Regards, LVT.


 
Deltas ©   (2010-07-18 14:11) [18]


> Hapastiks   (16.07.10 11:52)  
>
> На одном из форумов я задал этот вопрос, ответа не дали,
>  пришел к вам.
> Собствено вопрос: как получить шапку программы через OpenDialog

С такой постановкой вопроса долго ты еще будешь скитаться по разным форумам. :)


 
Deltas ©   (2010-07-18 14:15) [19]


> Демо ©   (18.07.10 11:44) [16]
> Используй Application.Title.

Application.MainForm.Caption, если уж на то пошло. Application.Title вернет заголовок "секретного" окна.


 
Демо ©   (2010-07-18 14:27) [20]


> Leonid Troyanovsky ©   (18.07.10 11:56) [17]
> > Демо ©   (18.07.10 11:44) [16] > Используй Application.
> Title.И где тут "Opera".


Если в опере будет запрошено Application.Title, то опера выдаст именну ту строку, которую показывает всплавающий хинт.
То же самое и со своей программой.


 
Демо ©   (2010-07-18 14:29) [21]


> Deltas ©   (18.07.10 14:15) [19]
> > Демо ©   (18.07.10 11:44) [16]> Используй Application.
> Title.Application.MainForm.Caption, если уж на то пошло.
>  Application.Title вернет заголовок "секретного" окна.


Нет, именно Application.Title.
Всплывающий хинт его возвращает в панели задач.


 
Deltas ©   (2010-07-18 15:43) [22]

И при чем тут всплывающая подсказка?

> Hapastiks   (17.07.10 10:44) [9]
> Под шапкой я имел в виду caption программы типа "Form1"
> или "Opera"


 
Демо ©   (2010-07-18 16:34) [23]


> Deltas ©   (18.07.10 15:43) [22]
> И при чем тут всплывающая подсказка?> Hapastiks   (17.07.
> 10 10:44) [9] > Под шапкой я имел в виду caption программы
> типа "Form1" > или "Opera"


Обрати внимание на выражение "caption программы".
Здесь где-то про формы слова есть?


 
Anatoly Podgoretsky ©   (2010-07-18 16:50) [24]

> Демо  (18.07.2010 16:34:23)  [23]

"caption программы"

Вот откуда взялась шапка - Шаптион программы


 
Deltas ©   (2010-07-18 16:59) [25]

Это и так понятно, что имеется в виду панель заголовка окна, так как у программы нет никаких заголовков. И то, что имеется в виду скорее всего главное окно, доказывают примеры "Form1" и т.д.

Кнопка, которую ты видишь на панели задач - это кнопка обычного окна Windows, дескриптор которого хранится в объекте класса TApplication. Окно имеет нулевые размеры и расположено в центре экрана. И свойство Application.Title возвращает именно строку на панели заголовка (title bar) этого "секретного" окна.
P.S. Для любого окна строка в панели заголовка (а также системное меню) совпадает со строкой и меню кнопки на панели задач. И в Delphi они различаются только благодаря этому "секретному" окну. Если не ошибаюсь, начиная с Delphi 2006 это было устранено, т.к. вылезло боком в версиях Windows, начиная с Windows Vista.

Что вообще автор мог иметь в виду под "шапкой"? Судя по "Form1" под "шапкой" подразумевается именно панель заголовка окна, которая у окна класса TApplication просто не видна, т.к. оно имеет нулевые размеры.


 
Hapastiks   (2010-07-18 17:26) [26]

"шапкой"  я назвал именно панель заголовка окна. Так как получить заголовок чужого окна, через Opendialog чтобы потом его закрыть?
Через ету  процедуру

var
H: hWnd;
Second: string;
begin
if OpenDialog.executed=true then
{Получениє "Шапки"}
H = FindWindow (nil, "Шапка");
if H = 0 then exit;
SendMessage (H, WM_CLOSE, 0,0);
end;


 
Германн ©   (2010-07-18 17:28) [27]


> Так как получить заголовок чужого окна, через Opendialog
> чтобы потом его закрыть?

Никак.


 
Юрий Зотов ©   (2010-07-18 18:24) [28]


> Hapastiks   (18.07.10 17:26) [26]


Если выкинуть вот эту строку:
if OpenDialog.executed=true then
то что изменится?

Ничего не изменится.

Тогда при же чем тут OpenDialog?

Ни при чем. Вам об этом говорят-говорят - а толку ноль, Вы все свое гнете.

Зачем задавать вопросы, если ответов Вы все равно не слушаете?


 
0x00FF00   (2010-07-18 20:05) [29]

Hapastiks, а в чём, собственно, состоит задача?
Откуда пришла необходимость вызова OpenDialog?


 
0x00FF00   (2010-07-18 21:48) [30]

О, блин!
Кажется, мне удалось протелепатировать, что имел в виду аффтор!

Нужно в качестве "Шапки" использовать имя файла, полученного после обращения к OpenDialog!

H = FindWindow(nil, PChar(OpenDialog1.FileName));


 
Leonid Troyanovsky ©   (2010-07-18 21:54) [31]


> 0x00FF00   (18.07.10 21:48) [30]

> H = FindWindow(nil, PChar(OpenDialog1.FileName));

Не все окна несут следы FileName.

--
Regards, LVT.


 
0x00FF00   (2010-07-18 22:16) [32]


> Не все окна несут следы FileName.

А ёгурты не все одинаково полезны, и что? =)
Я просто высказал догадку о том, что хоткл сказать топикстартер.

Например, есть у него окно текстового редактора, в заголовке которого есть имя файла. Выбираем файл → ищем подходящее окно → закрываем. PROFIT!


 
Германн ©   (2010-07-18 23:36) [33]


> Например, есть у него окно текстового редактора, в заголовке
> которого есть имя файла.

Ага.
> Под шапкой я имел в виду caption программы типа "Form1"
> или "Opera"


 
Dennis I. Komarov ©   (2010-07-19 10:05) [34]

Во как:

TForm(OpenDialog.Owner).Caption


 
Плохиш ©   (2010-07-19 10:49) [35]


> Hapastiks   (18.07.10 17:26) [26]

Больше двух дней. Тут без программиста не обойтись, нанимайте.



Страницы: 1 вся ветка

Текущий архив: 2010.10.10;
Скачать: CL | DM;

Наверх




Память: 0.55 MB
Время: 0.012 c
2-1278787052
Nikfel
2010-07-10 22:37
2010.10.10
Как из RichEdit получить и засунуть текст в формате RTF?


15-1278780157
Jeer
2010-07-10 20:42
2010.10.10
Вот и я дошел до этой жизни..


2-1279622166
linuxoid
2010-07-20 14:36
2010.10.10
что означает это ошибка?


15-1278919381
AKE
2010-07-12 11:23
2010.10.10
C помощью какого ПО можно создавать большие трехмерные карты


15-1278662537
Дмитрий Тимохов
2010-07-09 12:02
2010.10.10
Системы бекапа и синхронизации