Страница 1 из 2

Windows 7 Taskbar

СообщениеДобавлено: 05.06.2009 13:55:46
sts
Так для общего развития

http://www.gumpi.com/Blog/2009/01/21/Wi ... skbar.aspx

качать http://www.gumpi.com/Downloads/Delphi/Win7Comp.zip

Описание\компоненты для работы с некоторыми возможностями Windows 7, например, полезны для DoubleCommandera - показывать на таскбаре, при свернутом сотоянии прогресс копирования.

ev: удалена ссылка на картинку (нет ответа от сервера)

Re: Windows 7 Taskbar

СообщениеДобавлено: 22.11.2014 05:51:03
mdli
Кто то может перевести под Lazarus компонент Windows 7 Taskbar Components http://delphi.fsprolabs.com/ ? Он у меня компилируется но Лазарус при установленном пакете не запускается, знаний мне не хватает

Re: Windows 7 Taskbar

СообщениеДобавлено: 24.11.2014 19:22:58
mig-31
А зачем он нужен, если он немультиплатформный

Re: Windows 7 Taskbar

СообщениеДобавлено: 25.11.2014 00:07:57
Sharfik
mig-31 писал(а):А зачем он нужен, если он немультиплатформный

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

Re: Windows 7 Taskbar

СообщениеДобавлено: 25.11.2014 13:53:44
mig-31
Sharfik писал(а):Зачем машины переднеприводные, если они только по асфальту ездить могут?

Машины тут не причем. Компонент Windows only.
Упомянутый вами DoubleCommandera кроссплатформен. Использование компонента усложнит код.
Или можете добавить поддержку Qt и GTK для других OS.

Re: Windows 7 Taskbar

СообщениеДобавлено: 25.11.2014 19:15:16
Sharfik
mig-31, прежде чем писать прочитай дважды кто и что писал :D
Машина - причем, это простейшее сравнение на пальцах и ответ зачем. Машина нужна чтобы ездить, компонент нужен чтобы отображать процесс работы программы. Если автор какой то программы добавит его в код и в одной ОС будет использоваться привычный для пользователей способ вывода данных, то ничего в этом плохого нет. Крича про кросплатформенность, высасывать проблемму из пальца глупо.

Re: Windows 7 Taskbar

СообщениеДобавлено: 26.11.2014 14:11:05
Лекс Айрин
Sharfik, если lazarus позиционируется как кроссплатформенное средство, то нет смысла туда пихать модули работоспособные только в одной системе, да еще и не во всех ее версиях (!). Кроме того, Майкрософт славится своей привычкой менять как структуру системы (в том числе программную), так и ее дизайн. Есть вероятность, что в последующих версиях виндовс приятный тебе фокус перестанет работать. И тогда пользователи не погладят программиста по голове...

Re: Windows 7 Taskbar

СообщениеДобавлено: 26.11.2014 17:35:28
sts
мда..., зачем такую чушь писать?
человеку надо компоненты в лазарус засунуть - а ему - "lazarus позиционируется как кроссплатформенное средство", "менять как структуру системы"...

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

Re: Windows 7 Taskbar

СообщениеДобавлено: 26.11.2014 21:28:43
Sharfik
sts писал(а):ну да, конечно, надо делфу купить за пару тыщ баксов, перегнать под нее проект, и все потому что ктото в своих фантазиях делает проги без учета особенностей разных платформ.

Они не знают, что Win и Linux принципиально разные среды, что в них одинакового только наличие кнопок и окошки в гуи.
Лекс Айрин писал(а):Sharfik, если lazarus позиционируется как кроссплатформенное средство, то нет смысла туда пихать модули работоспособные только в одной системе, да еще и не во всех ее версиях (!). Кроме того, Майкрософт славится своей привычкой менять как структуру системы (в том числе программную), так и ее дизайн. Есть вероятность, что в последующих версиях виндовс приятный тебе фокус перестанет работать. И тогда пользователи не погладят программиста по голове...

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

Re: Windows 7 Taskbar

СообщениеДобавлено: 27.11.2014 00:48:18
Padre_Mortius
mdli писал(а):Кто то может перевести под Lazarus компонент Windows 7 Taskbar Components http://delphi.fsprolabs.com/ ? Он у меня компилируется но Лазарус при установленном пакете не запускается, знаний мне не хватает


При таких проблемах можно использовать gdb.exe следующим способом
1. Запускаем консоль
2. Переходим в папку с установленным Lazarus
3. Запускаем gdb.exe lazarus.exe
4. Когда увидели в консоли приглашение gdb
lazarus>gdb.exe lazarus.exe
GNU gdb (GDB) 7.2
Copyright (C) 2010 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "mingw32".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from lazarus.exe...done.
(gdb)

Набираем команду run
5. Наше приложение валится с ошибкой, которая отображается в выводе gdb
(gdb) run
Starting program: lazarus.exe
[New Thread 3988.0xeec]
[New Thread 3988.0x4d8]

Program received signal SIGSEGV, Segmentation fault.
0x0058d7cc in TWINCONTROL__HANDLEALLOCATED (this=<error reading variable>) at ./include/wincontrol.inc:7237
7237 HandleAllocated := (FHandle <> 0);
(gdb)

6. Вводим команду bt и получаем стек со строкой, на которой наше приложение упало с ошибкой
(gdb) bt
#0 0x0058d7cc in TWINCONTROL__HANDLEALLOCATED (this=<error reading variable>) at ./include/wincontrol.inc:7237
#1 0x0058fe01 in TWINCONTROL__HANDLENEEDED (this=<error reading variable>) at ./include/wincontrol.inc:7677
#2 0x0058c091 in TWINCONTROL__GETHANDLE (this=<error reading variable>) at ./include/wincontrol.inc:6354
#3 0x00c33d13 in FSPTASKBARCOMMON_init () at fspTaskbarCommon.pas:27
#4 0x0040ec34 in fpc_initializeunits ()
#5 0x7efde000 in ?? ()
#6 0x004138e1 in SYSTEM_EXE_ENTRY$TENTRYINFORMATION ()


В данном случае, Lazarus упал на 27 строке в файле fspTaskbarCommon.pas

P.S. Приложение должно быть собрано с отладочной информацией

Re: Windows 7 Taskbar

СообщениеДобавлено: 27.11.2014 09:52:20
Лекс Айрин
sts писал(а):ну да, конечно, надо делфу купить за пару тыщ баксов, перегнать под нее проект, и все потому что ктото в своих фантазиях делает проги без учета особенностей разных платформ.


А нафига мне дельфи? Мне надо чтобы прога запускалась на разных платформах... а на рюшки плевать -- усилия потребные на их реализацию(если совсем уж делать нечего) я лучше кину на, допустим, нормальную реализацию полупрозрачности. от нее хоть польза будет. А если использовать не кросплатформенные компоненты, то я запутаюсь в том, что где необходимо делать.

Re: Windows 7 Taskbar

СообщениеДобавлено: 27.11.2014 15:49:09
Sharfik
Лекс Айрин писал(а):А нафига мне дельфи? Мне надо чтобы прога запускалась на разных платформах... а на рюшки плевать -- усилия потребные на их реализацию(если совсем уж делать нечего) я лучше кину на, допустим, нормальную реализацию полупрозрачности. от нее хоть польза будет. А если использовать не кросплатформенные компоненты, то я запутаюсь в том, что где необходимо делать.

С этого и надо начинать - "вам надо на то чтобы она запускалась везде где попало, в ущерб удобствам", а мне нужны программы которыми пользоваться удобно, и плевать что они могут не собираться под Мак или Линукс.
У всего свое ТЗ. И говорить что " нет смысла туда пихать модули работоспособные только в одной системе, да еще и не во всех ее версиях" глупо, не зная требований конкретного случая.

Re: Windows 7 Taskbar

СообщениеДобавлено: 27.11.2014 17:06:23
Лекс Айрин
Sharfik, мне надо чтобы оно работало... пусть и не везде, но хотя бы на win/nix платформах. Поэтому, собственно, и используется Lazarus ибо... "Write once - compile everywhere!". Если бы мне нужна была бы wintel платформа, то я выбрал бы другой компилятор. Или даже другой язык.


Sharfik писал(а):У всего свое ТЗ. И говорить что " нет смысла туда пихать модули работоспособные только в одной системе, да еще и не во всех ее версиях" глупо, не зная требований конкретного случая.


Не могу придумать ни одной уважительной причины, согласно которой имело способ реализовывать подобную топику плюшку. Удобно... не уверен. Зато есть отличная от нуля вероятность, что данной приблуды в следующих версиях windows не будет. Вообще. Для примера, достаточно сравнить функционал Win7 и Win8.

Re: Windows 7 Taskbar

СообщениеДобавлено: 28.11.2014 18:09:45
Sharfik
Лекс Айрин писал(а): Удобно... не уверен. Зато есть отличная от нуля вероятность, что данной приблуды в следующих версиях windows не будет. Вообще. Для примера, достаточно сравнить функционал Win7 и Win8.

В Win7,8 это есть.. в 10 сам не видел, говорят что есть.
Сегодня делал расчет освещения для поселка(я не программист по работе, если что), и вот нафиг не сдалось мне окно выполнения задачи. Чтобы было понятнее - 20% работы выполнялось час, думаю весь расчет если бы не тормознул часов на 8. При этом, при переключении на программу она подтупливает, отрисовывая трехмерку которая на фоне процесса есть. Мне совсем не прикольно было переключаться на процесс, который в фоне выполняется, чтобы посмотреть закончился он или нет. Если бы там так же прогресс показывался в виде кнопки панели задач, я был бы не против. А дергаться "Ну что программа ты закончила или еще нет?" некому не нравится. Вот зачем такие приблуды, с виду бесполезные, нужны - нервы экономить.

Re: Windows 7 Taskbar

СообщениеДобавлено: 28.11.2014 18:24:49
Лекс Айрин
Sharfik, для этого можно, например, проиграть звуковой сигнал при окончании копирования. Это проще. Или в заголовке/ подсказке иконки показывать процент выполнения (не время, оно имеет тенденцию врать). А подтормаживать и так висящую систему динамически прорисовывая значок.... может, оставим микроскоп в покое?

Sharfik писал(а):В Win7,8 это есть.. в 10 сам не видел, говорят что есть.


К сожалению, это НЕ показатель. Кнопка "Пуск" была с 95й винды... и убрав ее Майкрософт здорово себе подпортила репутацию.