View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0000910 | SAS.Планета | Баг / Bug | public | 14-08-2011 13:35 | 10-10-2012 11:50 |
| Reporter | Phemmer | Assigned To | Alezy80 | ||
| Priority | normal | Severity | tweak | Reproducibility | always |
| Status | closed | Resolution | fixed | ||
| Platform | Windows | OS | 7 | OS Version | Ultimate |
| Product Version | 110418 | ||||
| Target Version | 120808 | Fixed in Version | 120808 | ||
| Summary | 0000910: Разворачивание Sas.Планета на 2й монитор - разворачивается на основном | ||||
| Description | К видеокарте подключено 2 монитора в режиме расширения экрана. При попытке развернуть окно программы на второй монитор (для этого двигаю окно на второй монитор и нажимаю кнопку развернуть) программа разворачивается на основном(первом мониторе) | ||||
| Additional Information | Все остальные программы нормально могут разворачиваться на второй монитор | ||||
| Tags | два монитора | ||||
| Attached Files | 4805.patch (1,291 bytes)
# HG changeset patch # User [email protected] # Date 1327064503 -14400 # Node ID 4ae0e07d1c5203296b8dc00694b35d472048ce03 # Parent a449efc4517c9fa9860080a1215f16d2ab656ff2 Fix 180 & 910 bugs diff -r a449efc4517c -r 4ae0e07d1c52 frm_Main.pas --- a/frm_Main.pas Thu Jan 19 22:13:07 2012 +0400 +++ b/frm_Main.pas Fri Jan 20 17:01:43 2012 +0400 @@ -2228,10 +2228,10 @@ if VIsFullScreen then begin Self.WindowState := wsMaximized; SetBounds( - Left-ClientOrigin.X, - Top-ClientOrigin.Y, - GetDeviceCaps(Canvas.handle, HORZRES) + (Width - ClientWidth), - GetDeviceCaps(Canvas.handle, VERTRES) + (Height - ClientHeight) + Monitor.Left + Left - ClientOrigin.X, + Monitor.Top + Top - ClientOrigin.Y, + Monitor.Width + (Width - ClientWidth), + Monitor.Height + (Height - ClientHeight) ); end else begin if VIsMaximized then begin @@ -2242,10 +2242,10 @@ end; Self.WindowState := wsMaximized; SetBounds( - 0, - 0, - GetDeviceCaps(Canvas.handle, HORZRES), - GetDeviceCaps(Canvas.handle, VERTRES) + Monitor.Left, + Monitor.Top, + Monitor.Width, + Monitor.Height ); end else begin Self.WindowState := wsNormal; | ||||
|
|
180-й тикет примерно про то же, но есть отличия в описаниях. |
|
|
Проблема в том, что на мониторах, отличных от основного координаты верхнего левого угла отличаются от (0,0), а в событии OnWinPositionChange вычисляются координаты именно от этого значения. В вычислениях надо использовать координаты верхнего левого угла текущего монитора. У меня с приложенным патчем перепрыгивание программы между экранами при разворачивании окна и переходе в полноэкранный режим пропало |
|
|
Патчи лучше засылать сразу в репозиторий |
|
|
Так тоже можно. Уже залил в репозиторий. |
|
|
Проблема решена? |
|
|
Проверил на 3х компах - работает. Наверно можно закрывать 0000910, 0000180, 0000187, 0000896 |
|
|
Закрыл (точнее, перевёл в resolved 910 и 180). Добавил Alezy80 в групу developer, чтобы было видно, кто решил проблему :) Спасибо. |
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 14-08-2011 13:35 | Phemmer | New Issue | |
| 14-08-2011 15:50 | gpsMax | Tag Attached: два монитора | |
| 14-08-2011 15:51 | gpsMax | Relationship added | related to 0000180 |
| 14-08-2011 15:53 | gpsMax | Note Added: 0003436 | |
| 20-01-2012 13:20 | Alezy80 | Note Added: 0005133 | |
| 20-01-2012 13:21 | Alezy80 | File Added: 4805.patch | |
| 20-01-2012 13:47 | gpsMax | Note Added: 0005134 | |
| 20-01-2012 13:55 | vdemidov | Note Added: 0005136 | |
| 22-01-2012 04:14 | Tolik | Note Added: 0005169 | |
| 22-01-2012 04:14 | Tolik | Status | new => feedback |
| 23-01-2012 05:13 | Alezy80 | Note Added: 0005177 | |
| 23-01-2012 05:21 | Tolik | Status | feedback => resolved |
| 23-01-2012 05:21 | Tolik | Fixed in Version | => 120808 |
| 23-01-2012 05:21 | Tolik | Resolution | open => fixed |
| 23-01-2012 05:21 | Tolik | Assigned To | => Alezy80 |
| 23-01-2012 05:25 | Tolik | Note Added: 0005178 | |
| 23-01-2012 05:28 | Tolik | Note Edited: 0005178 | |
| 23-01-2012 08:34 | vdemidov | Target Version | => 120808 |
| 10-10-2012 11:50 | Tolik | Status | resolved => closed |
| 08-08-2025 13:22 | zed | Category | Баг => Баг / Bug |