| Booster | 
| Отправлено: 16.08.2005, 12:24 | 
 
 
 | 
 
  
Ученик-кочегар 
 
Группа: Участник 
Сообщений: 29 
  
  
 | 
 Как установить окно проги поверх всех окон в винде?  | 
  | 
| Gedeon | 
| Отправлено: 16.08.2005, 12:38 | 
 
 
 | 
 
  
Ветеран 
 
Группа: Модератор 
Сообщений: 1742 
  
  
 | 
 SetForegroundWindow(...);
 | 
  | 
| olegenty | 
| Отправлено: 16.08.2005, 12:48 | 
 
 
 | 
  
Ветеран 
 
Группа: Модератор 
Сообщений: 2412 
  
  
 | 
 либо FromStyle = fsStayOnTop 
смотря, что Booster имел в виду.
 | 
  | 
| Vlad | 
| Отправлено: 16.08.2005, 12:59 | 
 
 
 | 
  
Машинист паровоза 
 
Группа: Участник 
Сообщений: 231 
  
  
 | 
 Если хочешь менять жинамически, то тебя спасет — SetWindowPos, со всем многообразием выбора, используемое в этой функции  | 
  | 
| AVC | 
| Отправлено: 17.08.2005, 08:17 | 
 
 
 | 
  
Ветеран 
 
Группа: Модератор 
Сообщений: 1583 
  
  
 | 
 Win2K из собственных наблюдений 
StayOnTop — слишком жестоко 
SetForegroundWindow(...); похоже срабатывает только один (первый) раз и это где то на уровне винды. А потом просто мигание в taskbar'e. 
SetWindowPos и прочие игры с Z order'ом работали нестабильно в проекте на Builder.
  
В рабочем проекте (без кнопки в taskbar) остановился на варианте 
if (SetForegroundWindow(Application->Handle) == 0) мигание_иконкой_в_tray
  
Черт! Решил еще раз посмотреть и не смог добиться эффекта не срабатывания SetForegroundWindow (Сегодня работает как положено). А ведь был, ей богу! И отнял не мало времени на поиск решения.  | 
  | 
| Vlad | 
| Отправлено: 17.08.2005, 08:43 | 
 
 
 | 
  
Машинист паровоза 
 
Группа: Участник 
Сообщений: 231 
  
  
 | 
 Ну не знай, не знай, у меня много где использовалось SetWindowPos, даже не только в Билдере, и всегда работало как швейцарские часы. Ну это видно батенька — судьба!.............  | 
  |