Картинка на кнопке в VB

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Димас
Начинающий
Начинающий
 
Сообщения: 2
Зарегистрирован: 10.08.2007 (Пт) 14:05

Картинка на кнопке в VB

Сообщение Димас » 10.08.2007 (Пт) 14:19

если в VB6 поставить картинкку на кнопку то она отображатся выше текста а надо чтобы была за текстом, может можно использавать контрол для кнопки( гдето видел) в котором можно сделать так как я хочу 8)

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 10.08.2007 (Пт) 17:26

Димас
Не нужно вообще этого делать.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Димас
Начинающий
Начинающий
 
Сообщения: 2
Зарегистрирован: 10.08.2007 (Пт) 14:05

Сообщение Димас » 10.08.2007 (Пт) 18:31

Хакер писал(а):Димас
Не нужно вообще этого делать.

Как не нужно? А как быть?

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 10.08.2007 (Пт) 18:45

Покажи мне в винде кнопку с картинкой, хоть одну. В винде. Не в какой-нибудь программе Васи Пупкина.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 10.08.2007 (Пт) 19:49

В Висте на всех кнопках, вызывающих элевацию, нарисован четырёхцветный щит.
Это их официальный гайдлайн.
Изображение

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 10.08.2007 (Пт) 19:58

Висту не видел, не знаю.

Каков класс этих кнопок?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

nekeda
Постоялец
Постоялец
 
Сообщения: 710
Зарегистрирован: 10.04.2005 (Вс) 23:20

Сообщение nekeda » 10.08.2007 (Пт) 21:05

Хакер
Покажи мне в винде кнопку с картинкой, хоть одну. В винде. Не в какой-нибудь программе Васи Пупкина.


А ты считаешь интерфейс ВинХП образцом для подражания?

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 10.08.2007 (Пт) 21:08

А ты считаешь интерфейс ВинХП образцом для подражания?


Да.
Но в первую очередь я считаю это стандартным интерфейсом Windows. И программа должна иметь стандартный интерфейс.

Более того, покажите мне картинки на кнопках, скажем, в WindowsMe.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

burik
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 514
Зарегистрирован: 03.11.2005 (Чт) 22:04
Откуда: Беларусь, Рогачев

Сообщение burik » 10.08.2007 (Пт) 21:39

Хакер писал(а):Висту не видел, не знаю.

Подтверждаю, сам видел..

...может можно использавать контрол для кнопки( гдето видел) в котором можно сделать так как я хочу...

Можно, конечно, если есть у тебя такой контрол.. :)

А вообще клепай свой
Между слухов, сказок, мифов,
просто лжи, легенд сомнений
мы враждуем жарче скифов
за несходство заблуждений
Игорь Губерман

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 10.08.2007 (Пт) 22:14

Хакер писал(а):Более того, покажите мне картинки на кнопках, скажем, в WindowsMe.

Ага, а в Windows 3.1 -- тем более ;-)

Лучше смотреть на Висту, потому что все там будем -- хотим этого или нет.

Класс этих кнопок BUTTON, рисунок добавляется сообщением BCM_SETSHIELD.

Упомянутый гайдлайн: http://msdn2.microsoft.com/EN-US/library/aa511445.aspx
Изображение

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 10.08.2007 (Пт) 22:17

tyomitch
Сказать по правде, я нежелаю переходить на новые ОС-и от MS. Потому что направление у них теперь другое. И принципы мне их больше не нравитяс. Но это тема для отдельного разговора.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

VVitafresh
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1641
Зарегистрирован: 12.05.2005 (Чт) 14:44
Откуда: Херсон, UA

Сообщение VVitafresh » 10.08.2007 (Пт) 22:24

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

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 10.08.2007 (Пт) 22:27

Хакер писал(а):tyomitch
Сказать по правде, я нежелаю переходить на новые ОС-и от MS. Потому что направление у них теперь другое. И принципы мне их больше не нравитяс. Но это тема для отдельного разговора.

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

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 10.08.2007 (Пт) 22:30

tyomitch
Дело в том что мне придётся вообще не писать. Либо писать под другие (неWin) ОСи. Что требует некоторой подготовки и переучивания.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

VVitafresh
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1641
Зарегистрирован: 12.05.2005 (Чт) 14:44
Откуда: Херсон, UA

Сообщение VVitafresh » 10.08.2007 (Пт) 22:35

:shock: Хакер, ну не нужно быть настолько радикальным.

Честно говоря, мне тоже Vista душу пока как-то не греет, но если будет объективная необходимость на нее перейти, то так тому и быть.
Никакую проблему невозможно решить на том же уровне, на каком она возникла. Нужно стать выше этой проблемы, поднявшись на следующий уровень.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 10.08.2007 (Пт) 22:49

Vista ладно. Виена, в которой Native-код будет выполняться на спеицальной виртуальной машине (sandbox - песочница) - не моя ОС.

ОСь, в которой будут работать лишь программы, написанные на .NET языках - не моя ОСь.

.NET языки меня совершенно не устраивает. VB6 меня тоже не очень то устраивает. С++ меня устраивает, но: а) сишник из меня ещё тот, б) если выполнение Native-кода процессором запретят, С++ меня тоже не будет устраивать.

В тоге - мы получим ОСь, в которой подавляющее большинство прогармм работать будет крайне медленно. Зачем мне такая ось?

Дельфисты, наверное, испытывают те же чувства...
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Twister
Теоретик
Теоретик
Аватара пользователя
 
Сообщения: 2251
Зарегистрирован: 28.06.2005 (Вт) 12:32
Откуда: Алматы

Сообщение Twister » 11.08.2007 (Сб) 9:44

если выполнение Native-кода процессором запретят
А что, процессор может исполнять еще какой-то код? :wink:
В тоге - мы получим ОСь, в которой подавляющее большинство прогармм работать будет крайне медленно. Зачем мне такая ось?

Дельфисты, наверное, испытывают те же чувства...
Если ты про висту, то программа (СУБД) написанная на мной Делфях прекрасно работает везде - и в ХР и в Висте. Скорость не снизилась...
А я все практикую лечение травами...

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 11.08.2007 (Сб) 9:56

Twister
А что, процессор может исполнять еще какой-то код?

Нет, не может.

Я точно не могу сказать, как будет. Но выполнение Native-кода на процессоре будет привилегией системы. "usermode"-ный нэтив-код будет выполняться виртуальной машиной.

Примерно также сейчас происходит с DOS-программами. Только в случае с дос-программами есть объективная причина - 16-разрядный код не может выполняться в 32-разрядном режиме.

В Виене же 32-разрядный код будет выполняться на виртуальной машине, при том что процессор будет работать в 32-разрядном режиме. Причина этому - дибильные попытки Microsoft увеличить защищённость системы...
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Mikle
Изобретатель велосипедов
Изобретатель велосипедов
Аватара пользователя
 
Сообщения: 4148
Зарегистрирован: 25.03.2003 (Вт) 14:02
Откуда: Туапсе

Сообщение Mikle » 11.08.2007 (Сб) 10:38

Димас
Пока тут админы флудят, отвечу :lol: - просто сделай Command1.Caption = "", а надпись включи в картинку.

nekeda
Постоялец
Постоялец
 
Сообщения: 710
Зарегистрирован: 10.04.2005 (Вс) 23:20

Сообщение nekeda » 11.08.2007 (Сб) 11:35

Хакер
И программа должна иметь стандартный интерфейс.


это почему ещё?

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 11.08.2007 (Сб) 11:41

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

+ Ещё раз - если я хочу чтобы кнопки выглядели как (в проглый раз были "Застывший кусочки стекла", в этот раз что-нибудь новенькое придумать) хм... лужицы, я поставлю стиль Лужа.theme - и все программы будут выгляделть как я хочу. Лишь чьё то воплощение криворукости будет по-прежнему само-рисоваться криво и совсем не так мне нужено. Фтопку такой софт.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

nekeda
Постоялец
Постоялец
 
Сообщения: 710
Зарегистрирован: 10.04.2005 (Вс) 23:20

Сообщение nekeda » 11.08.2007 (Сб) 12:12

Хакер
ты когда нибудь видел, чтобы winamp хоть на какой то винде рисовался криво? со всем возможностями modern skins?
Софт должен рисоваться не так, как тебе нужно, а так как это задумал разработчик. Другое дело что ты - как пользователь - вправе выбрать такой софт, который рисуется так, как тебе это нравится.

Это раз. Два: ты пишешь ПО и ты сам решаешь какие требования будут для его нормальной работы. Пока не вышла Виста - никто не думал о совместимости с ней. Сейчас никто не думает о совместимости с Вьенной. Другое дело, что грамотные разработчики после выхода новой ОС тут же выпускают апдейт. Разумеется, реализовать свой интерфейс который будет грамотно отображатся на всех машинах, сложнее, чем не думать об этом вообще, используя стандартные кнопочки. Но вот это как раз каждый сам решает - заморачиваться ему на эту тему или нет, и тот же винамп - отличный пример того, что вполне можно реализовать свой интерфейс не криво. А то что таких примеров не так много - это совсем другой разговор.

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 11.08.2007 (Сб) 12:16

А ещё в Висте есть "Command Links" -- кнопки с произвольной картинкой, по умолчанию -- с зелёной стрелочкой.

Они тоже класса BUTTON, но со стилем BS_COMMANDLINK

http://msdn2.microsoft.com/En-US/library/aa511455.aspx
Изображение

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 11.08.2007 (Сб) 12:20

ты когда нибудь видел, чтобы winamp хоть на какой то винде рисовался криво?


Согласен - винапм очень хорошо сделан. Сомневаюсь в том, что автор достигнет подобного качества.

Софт должен рисоваться не так, как тебе нужно, а так как это задумал разработчик.

1) Нифига
2) Фтопку такой софт.

ты пишешь ПО и ты сам решаешь какие требования будут для его нормальной работы.


В узком смысле. Требования должны быть адекватными, как миниум.

Пока не вышла Виста - никто не думал о совместимости с ней

И я тоже, постя ответ в эту тему, о ней не думал.

Сейчас никто не думает о совместимости с Вьенной.

Речь про WinVienna здесь шла вообще по другому поводу.

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

Всё же нужно юзать стандартные кнопочки. Тебе ведь не приходит в голову делать свои диалоги для операций "Открыть/Сохранить файл" ?

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

Единственный в своём роде. Я практически полностью уверен, что автор даже близко не подойдёт к такому уровню.


К тому же не следует говорить о винампе как о примере. У винампа свой фирменный стиль. Автор же хочет стандартные виндовые кнопочки с картинкой. Такого не бывает (Тёмыч, Виста не в счёт).
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 11.08.2007 (Сб) 12:33

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

Всё же нужно юзать стандартные кнопочки. Тебе ведь не приходит в голову делать свои диалоги для операций "Открыть/Сохранить файл" ?

Писателям Офиса -- пришло в голову.
И вообще, они традиционно чихать хотели на стандартные элементы интерфейса. С высокой колокольни.
У них все, поголовно все контролы собственные.
Изображение

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 11.08.2007 (Сб) 12:46

Интерфейс офиса не переношу. Также как и VS200X-студии офисоподобные. Фу. Образец дибилизма... :evil:
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

nekeda
Постоялец
Постоялец
 
Сообщения: 710
Зарегистрирован: 10.04.2005 (Вс) 23:20

Сообщение nekeda » 11.08.2007 (Сб) 12:47

Софт должен рисоваться не так, как тебе нужно, а так как это задумал разработчик.
1) Нифига


Фига. Другое дело, что разработчик по-хорошему должен предоставить тебе возможность изменять то, как он будет рисоватся. Но в рамках того, как он это задумал. Софт, который работает не так, как это задумал разработчик - плохой софт. Фтопку такой софт :)

А лужа.theme как раз очень плохой выход. Это крайняя мера, когда тебе режет глаз стандартный интерфейс. И нигде не возникает столько глюков, как при использовании програм типа StyleXP, WindowBlinds и т.д. Где то всегда не влезает шрифт, где то он сливается с фоном. Как раз отличный пример того, что бывает когда софт работает не так, как задумал разработчик. Хотя я и сам пользуюсь виндоублаиндс, потомучто стандартный интерфейс мне режет глаза ещё больше.

Всё же нужно юзать стандартные кнопочки. Тебе ведь не приходит в голову делать свои диалоги для операций "Открыть/Сохранить файл" ?


Если это будет необходимо в рамках данной программы - сделаю, почему нет? Очень даже приходит.

Единственный в своём роде.


Не единственный. ModernContactList в миранде работает везде, где есть WinNT, и msvcr71.dll. При соблюдении этих условий окно миранды выглядит одинаково на любой машине.
Ни разу не видел поблем при использовании скинов в опере.
FruityLoops Studio имеет свой собственный интерфейс, в котором очень много разных контролов - и всё всегда рисуется без глюков.
Практически все VST инструменты имеют свой, не виндовый интерфейс..

Использовать стандартный и-фейс только потому, что сделать нестандартный сложно; потому, что стандартный не глючит - это плохой подход. Гораздо лучше всё таки научится делать свой интерфейс не глючным. :)

VVitafresh
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1641
Зарегистрирован: 12.05.2005 (Чт) 14:44
Откуда: Херсон, UA

Сообщение VVitafresh » 11.08.2007 (Сб) 12:49

Раз уж тема зашла про офис и стала слегка "оффтопной" спрошу.

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

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 11.08.2007 (Сб) 12:56

А лужа.theme как раз очень плохой выход.

С чего бы это?
Это крайняя мера, когда тебе режет глаз стандартный интерфейс

Она настолько крайняя, насколько крайняя luna.theme, которая используется по умолчанию.
И нигде не возникает столько глюков, как при использовании програм типа StyleXP, WindowBlinds и т.д.

1) Я совершенно не призываю использовать эти программы?
2) Шлюки возникают как-раз таки в кривых программа, где в коде юзаются цифры, вместо вызовов GetSystemMetrics. И т.д. и т.п.

Если это будет необходимо в рамках данной программы - сделаю, почему нет? Очень даже приходит.

Напрашивается вывод: СГ/АК

Использовать стандартный и-фейс только потому, что сделать нестандартный сложно; потому, что стандартный не глючит - это плохой подход. Гораздо лучше всё таки научится делать свой интерфейс не глючным.

Нет, это не моя логика, Я наоборот всегда выбираю сложные пути. Так что делаю стандартный интерфейс не потому что он безглючен и прост в использовании, а потом что он стандартен.

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

Одно дело когда программа имеет собственный стиль - это хорошо, а если стиль красивый - это вообще здорово (пример - Алкоголь 120%)

Другое дело когда программа использует стиль винды, но при это добавляет в него свои поправки, ввиде картинок на кнопках к примеру.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

burik
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 514
Зарегистрирован: 03.11.2005 (Чт) 22:04
Откуда: Беларусь, Рогачев

Сообщение burik » 11.08.2007 (Сб) 13:03

nekeda писал(а):Софт, который работает не так, как это задумал разработчик - плохой софт. Фтопку такой софт


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

Софт изначально предназначен для использования юзерами. Если разработчик делает софт, который не устраивает юзеров, то какой смысл делать софт вообще?
Между слухов, сказок, мифов,
просто лжи, легенд сомнений
мы враждуем жарче скифов
за несходство заблуждений
Игорь Губерман

След.

Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex-бот и гости: 68

    TopList