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

Вниз

Как поместить кнопку на Caption в Windows Vista and later   Найти похожие ветки 

 
@!!ex ©   (2010-01-17 18:13) [0]

Раньше пользовал код отсюда:
http://delphiru.ru/index.php?option=com_content&task=view&id=25&Itemid=9

Под XP работает без проблем.
Но начали тестировать на Windows Seven с включенным Аэро не работает вообще, если без аэро - то все ок.
Не могу найти материалов на тему рисования кнопок под Аэро.


 
Anatoly Podgoretsky ©   (2010-01-17 19:13) [1]

Говорили же - не лезть на Caption формы, плохо кончится и пользователи будут недоволны.


 
@!!ex ©   (2010-01-17 19:24) [2]

Суть задачи:
Редактор, мощный, с кучей возможностей. Куча окон для реализации функционала.
Писать документацию в один файл пробовали, поулчается плохо. В основном потому, что сложно следить за актуальностью документации.
Хорошее решение - для кажого окна отдельный файл. Файлы получаются относительно не большими, легко обновлять документацию.
Как обеспечить доступ к документации?
Самый очевидный путь - отдельная кнопка на Caption, при нажатии на которую вызывается справка по текущему окну.
В целом удобно и хорошо... Вот только с аэро проблемы.


 
@!!ex ©   (2010-01-17 19:25) [3]

Как вариант - заменить Caption на что-то свое, как делают всякие 3dsMax и Фотошопы, но изобретать что-то свое не хочется, а готового пока не могу найти нормального качества.


 
sniknik ©   (2010-01-17 19:41) [4]

> Самый очевидный путь - отдельная кнопка на Caption
а по моему самое очевидное это нажатие кнопки F1, и активация biHelp в системных кнопках, а вовсе не впихивание своей.


 
@!!ex ©   (2010-01-17 19:43) [5]

> [4] sniknik ©   (17.01.10 19:41)

1) Никто из обычных пользователей не знает об F1.
2) biHelp работает только если нет кнопок Maximize и Minimize.


 
Anatoly Podgoretsky ©   (2010-01-17 19:49) [6]

> sniknik  (17.01.2010 19:41:04)  [4]

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


 
sniknik ©   (2010-01-17 20:21) [7]

> 2) biHelp работает только если нет кнопок Maximize и Minimize.
хм. а это чисто vcl-ная фича или вообще подарок от Гейтца? (не сталкивался, не нужно было, но смотрю по поиску проблема есть, всплывает...)


 
@!!ex ©   (2010-01-17 20:28) [8]

> [6] Anatoly Podgoretsky ©   (17.01.10 19:49)

На многих окнах меню нет вообще.
А способ получения доступа к хелпу желательно иметь одинаковый для всех.


> [7] sniknik ©   (17.01.10 20:21)

Гейтс постарался.
Первое о чем подумал - об этой кнопке. Проверил.. не работает. Начал копаться, оказалось только для диалогов.


 
Anatoly Podgoretsky ©   (2010-01-17 20:57) [9]

> sniknik  (17.01.2010 20:21:07)  [7]

Это от БГ предназначена для окон стиля Диалог. Подсказка для диалогов.


 
Anatoly Podgoretsky ©   (2010-01-17 20:59) [10]

> @!!ex  (17.01.2010 20:28:08)  [8]

Так ты что, чужие окна хочешь изуродовать.
Если свои, то кто мешает кнопку добавить.
Или тебе надо вые, выделиться, что бы не как у всех, мол какой продвинутый чувак.


 
@!!ex ©   (2010-01-17 21:52) [11]

> [10] Anatoly Podgoretsky ©   (17.01.10 20:59)

Свободное место на кэпшене есть на всех окнах.
Кнопка на кэпшене - универсальное решение.
Предложите другое универсальное решение, которое будет бросаться в глаза пользователю и я с удовольствием его применю.


 
Anatoly Podgoretsky ©   (2010-01-17 21:57) [12]

> @!!ex  (17.01.2010 21:52:11)  [11]

Тебя даже не убеждает, почти полное отсутствие таких приложений.
Сразу видно игродела, а не программиста для Виндоус


 
@!!ex ©   (2010-01-17 22:02) [13]

> [12] Anatoly Podgoretsky ©   (17.01.10 21:57)

Да. Меня не уюеждает
ADobe After Effects
ADobe Photoshop
Autodesk 3D Studio Max
MAGIX Movie Edit Pro

Действительно, их собственные кэпшены для окон такое убожество.. и как специалисты всего мира только платят сотни нефти за такое убожество. ;)

Предложите пожалуйста ваше решение этой задачи.


 
@!!ex ©   (2010-01-17 22:03) [14]

Кстати, идею с кнопочкой хелпа посмотрел в DD-WRT, очень помогает при работе.
Документация отдельная вообще не нужна.


 
Anatoly Podgoretsky ©   (2010-01-17 22:11) [15]

> @!!ex  (17.01.2010 22:02:13)  [13]

Знаешь когда ты приблизишься хотя бы до одного процента доходов и аудитории, то ты тоже смело можешь плевать на всех и эцилоп тебя не будет иметь права бить. Сообственно и класс этих программ не характерен для Виндоус. Они так далеки от народа.


 
@!!ex ©   (2010-01-17 22:16) [16]

> [12] Anatoly Podgoretsky ©   (17.01.10 21:57)
> Тебя даже не убеждает, почти полное отсутствие таких приложений.
> Сразу видно игродела, а не программиста для Виндоус

Я не видел ни одного приложения с такой вот штукой:
http://img407.imageshack.us/img407/4534/ihelp.jpg

Скриптовики были очень рады внедрению этой штуки...
В МС и КодГире такое пока не сделали. Почему? Я не знаю, но меня это не убеждает в бесполезности такой штуки. Потому что я вижу отзывы реальных пользователей.
Тупо копировать чужие решения? Это хорошо, но эти решения тоже когда то были использованы в первый раз.


> [15] Anatoly Podgoretsky ©   (17.01.10 22:11)

Фотошоп продается за 30 000 рублей за копию.
Мы продаем примерно за 70 000 рублей за копию...
И да, делается не для массовой аудитори, а для специалистов в области.


 
@!!ex ©   (2010-01-17 22:25) [17]

Вопрос:
Вы можете предложить хорошее унивисальное решение для всех типов окон(с меню, без меню, с тулбаром, без тулбара, с полным набором кнопок на кэпшене и с не полным)?


 
turbouser ©   (2010-01-17 22:32) [18]


> @!!ex ©   (17.01.10 22:25) [17]


> Вы можете предложить хорошее унивисальное решение для всех
> типов окон

F1


 
@!!ex ©   (2010-01-17 22:33) [19]

> [18] turbouser ©   (17.01.10 22:32)

Это уже обсуждалось. На F1 никто не жмет, так как привыкли что 90% софта на жту кнопку не реагирует или выдает малоинформативную информацию о создателях программы.


 
turbouser ©   (2010-01-17 22:34) [20]


> @!!ex ©   (17.01.10 19:43) [5]


вот интересно... как

> 1) Никто из обычных пользователей не знает об F1.

и

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

ы?


 
turbouser ©   (2010-01-17 22:35) [21]


> @!!ex ©   (17.01.10 22:33) [19]


> На F1 никто не жмет, так как привыкли что 90% софта на жту
> кнопку не реагирует или

8-() о как... однако..


 
@!!ex ©   (2010-01-17 22:36) [22]

> [20] turbouser ©   (17.01.10 22:34)

Специалисты в области.
Наша задача впихнуть на рынок свой софт.
Как и все пользователи народ не пользуется кнопкой F1.
Предлагаете на диске с прогой написать большими буквами:
"Для получения справки с описанием функций окна нажмите F1"?
Или отдельный манул с правилами пользования мануалом?


 
@!!ex ©   (2010-01-17 22:38) [23]

> [21] turbouser ©   (17.01.10 22:35)

Да. Вот такая правда жизни. Большинство пользователей не нажимает на F1.
Можете опрос провести среди не программистов. Или просто попытаться в саппорте поработать.
Я поработал... после чего и решил уделить внимание таким мелочам как в [16] и в [0].


 
turbouser ©   (2010-01-17 22:41) [24]


> @!!ex ©   (17.01.10 22:36) [22]


> Как и все пользователи народ не пользуется кнопкой F1.

Очень даже пользуется.
Причем чаще, чем кнобкой с вопросиком на окне диалога.
Это стандарт в виндовс, как ни печально...
Вот Tip tricks - точно полпроцента юзеров смотрит :)


 
@!!ex ©   (2010-01-17 22:45) [25]

> [24] turbouser ©   (17.01.10 22:41)

Ну, видимо мне попадаются неправильные юзеры.....
Наверно тогда на все формы добавлю TMainMenu с одним пунктом
Help   F1


 
turbouser ©   (2010-01-17 22:51) [26]


> @!!ex ©   (17.01.10 22:45) [25]

Если так принципиально - то можно вместо пункта майнменю, отжирающего довольно много места в окне, добавить floatwindow аля офис, доунлоадмастер, фдм и т.п. - рядом с треем. прозрачненькое.


 
Anatoly Podgoretsky ©   (2010-01-17 22:53) [27]

> @!!ex  (17.01.2010 22:45:25)  [25]

А чего ты такой жадный, почему бы не добавить пункт File|Exit Alt+F4


 
@!!ex ©   (2010-01-17 22:56) [28]

> [26] turbouser ©   (17.01.10 22:51)

Кстати, да. Интересный вариант.
MainMenu действительно жрет слишком много места, особенно на мелких окошках заметно.

> [27] Anatoly Podgoretsky ©   (17.01.10 22:53)

Потому что им там не место?


 
Anatoly Podgoretsky ©   (2010-01-17 23:04) [29]

> @!!ex  (17.01.2010 22:56:28)  [28]

Как это не место, закрытие/выход формы и не место, ну-ну.
Ты что формы только крестиком закрываешь?
А вот у меня пользователи более продвинутые.


 
@!!ex ©   (2010-01-17 23:07) [30]

> [29] Anatoly Podgoretsky ©   (17.01.10 23:04)

Хм. Не подумал, как-то привык на крестик закрывать. Надо будет опрос среди пользователей на эту тему провести.


 
Игорь Шевченко ©   (2010-01-17 23:13) [31]

Юзабильность рождается в муках. У тебя наверное и для каждого пункта каждого меню нет клавиатурной комбинации ?


 
Игорь Шевченко ©   (2010-01-17 23:14) [32]


> Редактор, мощный, с кучей возможностей. Куча окон для реализации
> функционала.


кого редактируем ?


 
@!!ex ©   (2010-01-17 23:24) [33]

> [31] Игорь Шевченко ©   (17.01.10 23:13)

Есть, но не для всех. Следующий пункт в багтрекере - это назначение комбинаций.


> [32] Игорь Шевченко ©   (17.01.10 23:14)
> кого редактируем ?

Интерактивные 3Д видеоролики.
Что-то типа редактора позволяющего делать компьютерные игры.


> [26] turbouser ©   (17.01.10 22:51)

Для того, чтобы в диалогах работало - нужно в отдельный поток пихать?


 
Anatoly Podgoretsky ©   (2010-01-17 23:31) [34]

> @!!ex  (17.01.2010 23:07:30)  [30]

А мне не надо опрашивать, достаточно посмотреть на моих пользователей, большинство закрывает через меню, реже крестиком и очень редко ALT+F4
Я их преучил пользоваться крестиком в тех случаях когда не однозначно, что отвечать, особенно на сообщение о проблемах. А то они старались закрыть процесс обновления клавишей Отмена, не понимая, что это означает не отмена диалога, а отмена процесса.

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


 
Anatoly Podgoretsky ©   (2010-01-17 23:34) [35]

> @!!ex  (17.01.2010 23:24:33)  [33]

Ну это не проблема, главное не переборщить, а то пользоваться не будут. Желательно ограничиться стандартными шоткатами, для стандартных действий и не делать для прочего. Если ты не знаешь стандарт то не стесняйся спрашивать, мы люди тут такие, которые в основном работают клавиатурой, а не мышью.


 
Игорь Шевченко ©   (2010-01-17 23:54) [36]

@!!ex ©   (17.01.10 23:24) [33]

Почему спрашиваю - понять, с чем пользователю больше придется/удобнее работать, с клавишами или с мышью. С мышью работать чаще всего неудобно. А если с клавиатурой, то отвлекаться на мышь вдвойне неудобно.

А делать кнопки в Caption - ну если тебе совсем нечего делать и ты наплюешь на пользователей, тогда делай кнопки.


 
@!!ex ©   (2010-01-17 23:58) [37]

> [36] Игорь Шевченко ©   (17.01.10 23:54)

Часть работы - мышь(тут горячие клавиши очень помогают)
Другая часть - скриптование, но там вроде все схвачено.

Цели сделать именно кнопками у меня нет, цель в том, чтобы сделать очевидный даже идиотам способ получить подсказку. Просто лично мне понравилось работать с DD-WRT, с помощью кнопки help в заголовке настроил всю прошивку вообще без дополнительных мануалов.


 
Anatoly Podgoretsky ©   (2010-01-18 00:03) [38]

> @!!ex  (17.01.2010 23:58:37)  [37]

Вот если бы это был Hint то это было бы удобно. А не елозить мышкой туда и обратно.


 
Игорь Шевченко ©   (2010-01-18 00:07) [39]

@!!ex ©   (17.01.10 23:58) [37]

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

А теперь сам посмотри, у тебя ряд окон (ну или одно), надо тянуться до кнопки, теряя текущее положение локуса - неудобно. Я, честно говоря, немного с подобного рода редакторами работал, не вспомню как у них сделано, но на F1 они вроде реагируют. Или режим подсказок, вроде хинтов около курсора


 
Игорь Шевченко ©   (2010-01-18 00:08) [40]

Anatoly Podgoretsky ©   (18.01.10 00:03) [38]

Мысли сходятся :)


 
@!!ex ©   (2010-01-18 00:10) [41]

> [39] Игорь Шевченко ©   (18.01.10 00:07)

F1 - это понятно.
По поводу "тянутся" - кнопка как раз для тех кто только осваивает тулзу, то есть об эффективности работы в любом случае речи не идет, т.к. просто не знаешь что и как работает...
интересная идея возникла:
Если открыто окно помощи, то при движении мыши по контролам автоматически в окен помощи вылазит описание что это за контрол и за что отвечает.
Тогда никакие кнопки не нужны...


 
Anatoly Podgoretsky ©   (2010-01-18 00:15) [42]

> Игорь Шевченко  (18.01.2010 00:07:39)  [39]

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


 
Anatoly Podgoretsky ©   (2010-01-18 00:17) [43]

> @!!ex  (18.01.2010 00:10:41)  [41]

Ну так это и есть Hint, только со своим HintWindow
Конечно это надо делать отключаемым.


 
Игорь Шевченко ©   (2010-01-18 00:18) [44]


> Если открыто окно помощи, то при движении мыши по контролам
> автоматически в окен помощи вылазит описание что это за
> контрол и за что отвечает.
> Тогда никакие кнопки не нужны...


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


 
@!!ex ©   (2010-01-18 00:19) [45]

> [44] Игорь Шевченко ©   (18.01.10 00:18)

В хинте картинки не вставить и подробное описание.


 
Andy BitOff ©   (2010-01-18 00:23) [46]

> @!!ex ©   (17.01.10 23:24) [33]
> Для того, чтобы в диалогах работало - нужно в отдельный
> поток пихать?

ASF


 
Anatoly Podgoretsky ©   (2010-01-18 00:27) [47]

> @!!ex  (18.01.2010 00:19:45)  [45]

В Hint вставляется все угодно, просто ты не умеешь работать с хинтами, посмотри хотя бы на Висте, как вставляют длинные описания и картинки.


 
@!!ex ©   (2010-01-18 00:30) [48]

> [47] Anatoly Podgoretsky ©   (18.01.10 00:27)

Видимо да. Где почитать можно про то, как с ними работать?
Просто дельфи таких широких возможностей не дает...


 
Игорь Шевченко ©   (2010-01-18 00:44) [49]


> Просто дельфи таких широких возможностей не дает...


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

А резюме к обеим веткам такое - над удобным интерфейсом надо работать, а не так, что пользуешься моделью, предлагаемой по умолчанию delphi во всех случаях. Для многих случаев эта модель подходит, для остальных - надо возиться и изучать.


 
Anatoly Podgoretsky ©   (2010-01-18 00:45) [50]


> @!!ex ©   (18.01.10 00:30) [48]

Боюсь, что придется искать только в форумах. Но суть такая что создается свое HintWindow окно вместо стандартного и оно используется, ну а как ты сам понимаешь там ты можешь делать что угодно. Я специально привожу слово HintWindow что бы ты мог поискать начальную информацию в справке.

Последний раз тему HintWindow в форумах я видел очень давно. Но может быть тебе хватит и справки.


 
@!!ex ©   (2010-01-18 00:50) [51]

> [49] Игорь Шевченко ©   (18.01.10 00:44)
> Delphi это обычный язык программирования, глупо говорить,
> что он не дает каких-то возможностей.

Понятно. Я имел ввиду в данном случае RAD, а не язык программирования.


> [50] Anatoly Podgoretsky ©   (18.01.10 00:45)

Спасибо.


 
turbouser ©   (2010-01-18 00:54) [52]


> @!!ex ©

Вариантов действительно тьма :) хотя, действительно, интересно, как кнопку добавить.. я не пробовал под висту и 7.. когда-то давноооо :) интересовался, под хр добавлял.. фигней страдал в общем :) но всеравно интересно :)


 
MonoLife ©   (2010-01-18 04:48) [53]

Для каждого окна показывать отключаемый "Совет дня", в котором, кроме "совета  дня" всегда есть надпись "F1 - подробно", как-то так..


 
Дмитрий Белькевич   (2010-01-18 22:32) [54]


> Понятно. Я имел ввиду в данном случае RAD, а не язык программирования.


А что с RAD не так? Хинтовых компонент готовых вагон и тележка. Да и свои можно сделать, если уж совсем экзотики хочется.

Дополнительные кнопки на кэпшнах два раза пытались ввести и два раза отказывались - съезжают постоянно.

Вообще - юзабилити - вещь сложная, и не однозначная, это да.

Одна из попыток формализации:

http://usethics.ru/blog/lib/software_checklist/



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

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

Наверх




Память: 0.62 MB
Время: 0.012 c
1-1242910957
Unknown user
2009-05-21 17:02
2010.03.21
TTypeInfo


15-1262443101
ttt_tkn
2010-01-02 17:38
2010.03.21
FireBird - Windows 7


11-1214593250
arthur
2008-06-27 23:00
2010.03.21
onPaint РІРѕРїСЂРѕСЃ (onPaint question)


6-1214837103
Валентин
2008-06-30 18:45
2010.03.21
Эмуляция DHCP


11-1214300690
Valera
2008-06-24 13:44
2010.03.21
Замена системных модулей для Delphi7.