Welcome to eComStation.RU site!

Select your language: Russian English Deutch Spanish Italian Portuguese Czech Polish French

Frequently asked questions and answers:

eComStation.RU

ru · en · de · es · it · pt · cz · pl · fr
eComStation - это совершенно другая операционная система для PC (IBM OS/2 Warp)
Программы, новости, статьи, поддержка пользователей, оборудование, вопросы и ответы.
 
      Что такое OS/2?НовостиУстановкаОбновлениеПрименениеБудущееСообществоКупить    
(Карта сайта)

 
 
Отчет: OS/2 совместимое оборудование
Как получить драйверы OS/2 бесплатно

 
Обновление

 
Программы

 
(Санкт-Петербург)

 
Преимущества (1)

 
Разработчику (1)

 
(Пайпы программ)

 
Компании: (1)

 
История (1):

 
(Бонусы)

 
Советы:

 
(Барьеры и решения)

 
Технологии: (1)

 
(Применение в науке, лаборатории, ..)

 

 
Готовые решения:

 
Новая eComStation:

 
Будущее: (1)

 
(Ссылки на другие сайты)

 
(Картинка дня)

 
Артефакты OS/2

 
Гаджеты

eCo Software Developer Connection


About DevCon
Subscription to DevCon
Budget of DevCon
FAQ


Roadmap
eCo Software runtime
eCo Software toolkit
Contacts

/ Guidelines: Additional control elements / Progress-bar / Progress-bar FAQ, tricks&tips

Progress-bar FAQ, tricks&tips

It's difficult learn how Progress bar works.. Прежде чем писпользовать PROGRESS.DLL в своей программе, ознакомьтесь с примером (prtest.c).
When to use Progress bar?

Open the window with progress bar if operation requires more than 5-10 seconds. You should provide Cancel button to user.

Why to use our Progress bar?
  • we draw eye-candy progress bar
  • we are sorting text strings on the surface of the window
  • we calculate the size of the window
Which kind of Progress bar to use?

Use Round PBar for applications which are rebuilding / changing / destroying something. Don't use Round PBar for copy / search operations.

How to create modal window Для того, чтобы сделать окно модальным или системно-модальным воспользуйтесь функциями WinProcessDlg() и WinSetSysModalWindow().

Если была вызвана функция WinProcessDlg(), для её завершения следует выполнить WinDismisssDlg(). Ни в коем случае нельзя уничтожать модальный диалог прогресса (WinDestroyWindow()) до того, как вызвана WinDismisssDlg()! Не стоит также, пытаться открывать какие либо новые окна (например, Message Box'ы), пока существует системно модальное окно. Пользователь всё равно, не сможет ими воспользоваться.

How to perform additional initialization? Если нужно произвести дополнительную инициализацию прогресса после его создания (например, установить атрибуты некоторых контролов), нужно создавать его без флага PRS_SHOW. После того, как дополнительная инициализация произведена, диалог можно показать с помощью WinShowWindow().
How to use own PNG pictures? Для использования своих картинок, их следует поместить в ресурсы исполнимого файла, или DLL ресурсов. Картинки должны иметь тип RT_PNG (определён в "progress.h"), а их ID должны идти подряд. ID первой картинки следует указать при вызове PrgShowDlg(). Для полоси всегда используются две картинки. Для иконки (круглого прогрессбара) используются столько картинок, сколько будет найдено (до первого несуществующего ID), но не более 101. Если указано использовать икноку или графическую полоску, но картинок для них в ресурсах найдено менее 2-х, диалог прогресса не будет найден и функция вернёт FALSE.
The window is jumping, changing size during the process Если какую-либо из надписей предполагается менять в процессе, следует при инициализации задать для неё заведомо большую строку, например " ", а затем, устанавливать новую надпись функцией PrgSetupCaption() указав в параметре flUpdate значение FALSE.
Text on buttons MSG-BOX-1: It's a good idea to use your own captions on the buttons instead of the default. Always use verbs as captions: "Close window", "Do not close", "Overwrite file", "Keep file" instead of "Yes", "No", "OK", etc.
Progress-bar animation only How to disable all text strings, frames and keep progress-bar animation only? All strings as NULL, disable frames
How to put Progress-bar dialog to the center of desktop? You can do this manually: example
How can I tell a progress bar the place to draw itself? no information
Is there are way to set the position within it's client window (owner)? no information
How can I calculate the size of a progress bar? no information
Can I draw the bar without any caption? no information
Can there be an implementation of progressbar as a static control window? no information

 

 
Обучение новичков

Списки протестированного OS/2 оборудования

 
Статьи


   
  Почему eComStation?
Возможности
Особенности
Применение
Ролики и скриншоты
   eComStation для
для бизнесменов
для студентов и инженеров
для продавцов компьютеров
сообщество пользователей
   Разработчик
Распространить программу
Описание API, библиотеки
Начать новый проект
Конкурсы
   Программы
Он-лайн каталог
Выбрать через eCo Market
   Служба поддержки
Отправить вопрос
Купить eComStation
Вопросы и ответы
Обучение новичков
 
 
© 2001 - 2014 eCo Software, All rights reserved
eComStation is a registered trademark of Serenity Systems International
OS/2 Warp is a registered trademark of IBM Corporation
 

 

 
Картинка дня: