| 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, даже не только в Билдере, и всегда работало как швейцарские часы. Ну это видно батенька — судьба!............. | 
|  |