BlackStar Localizations Studio

Объявление

Прежде чем начать работу с форумом, прочитайте правила: ПРАВИЛА ФОРУМА

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » BlackStar Localizations Studio » Общий форум » Редактор ресурсов не может изменить размер окна переводимой программы.


Редактор ресурсов не может изменить размер окна переводимой программы.

Сообщений 1 страница 10 из 10

1

Редактор ресурсов не может изменить размер окна переводимой программы.
Это оригинальное окно программы:

http://sd.uploads.ru/t/OiLcD.png

В самом редакторе окно можно увеличить:
http://s8.uploads.ru/t/dhyJa.png

Запускаешь измененный файл а окно не изменило размер:
http://s5.uploads.ru/t/946Ud.png

Пробовал разные редакторы ...толку ноль!

Вот ссылка на программу https://www.mediafire.com/file/fr035wyd … f.exe/file
Инсталлятор уже распакованный и из него взят только файл самой программы он весит 208KB

0

2

Потому что контролы (элементы лежащие на окне), окна  создаются скорее всего динамически.  :rolleyes:
Надо лезть в код программы, найти функцию создания окна и увеличивать размер контролов и окна там. :)
Или подправить свойство minimize или autosize. :)

0

3

Короче глянул сегодня.
Всё там прекрасно сохраняется  :)
Только надо все контролы "перебрать".
Потому как окошко "обжимается" по элементам (свойство Autosize присутствует)

То есть:
Было
LTEXT "Red", -1, 4, 39, 21, 12, SS_CENTERIMAGE

Стало
LTEXT "Красный", -1, 4, 39, 41, 12, SS_CENTERIMAGE

Ширина контрола увеличилась.
была 21, стала 41
Значить надо все контролы которые справа (Scrolbar, Edit), передвинуть на 20 вправо.
Но на этом ещё не всё :)
Есть вверху панелька инструментов (ToolbarWindow32), надо увеличить на 20 ширину
Так же поступаем и с ListBox

Счас надо отбежать срочно, чуть попозже наглядно сделаю.

http://rgho.st/7FLnmqw8y

0

4

Вот короче.
http://s3.uploads.ru/t/lKivO.jpg

Красной рамкой обведены контролы у которых надо увеличить ширину
Зелёной рамкой которые надо сдвинуть вправо.

-------------------------------------------------------------------------------
До редактирования:
130 DIALOG 0, 0, 184, 135
STYLE DS_SETFONT | DS_CENTER | WS_MINIMIZEBOX | WS_CAPTION | WS_SYSMENU
MENU 110
CAPTION "Hex Color Finder"
FONT 8, "MS Sans Serif"
{
COMBOBOX 1016, 4, 3, 68, 49, CBS_DROPDOWNLIST | WS_VSCROLL
CONTROL "", 1015, "ToolbarWindow32", 0x00000944, 74, 3, 106, 14
CONTROL "", 1020, "BUTTON", BS_OWNERDRAW | WS_TABSTOP, 4, 23, 18, 12
CONTROL "", 1000, "HCF_Color", 0x00000002, 25, 23, 14, 12
CONTROL "", 1001, "HCF_Gradient", 0, 42, 23, 121, 12
CONTROL "", 1002, "HCF_Color", 0x00000002, 166, 23, 14, 12
LTEXT "Red", -1, 4, 39, 21, 12, SS_CENTERIMAGE
SCROLLBAR 1009, 25, 39, 133, 12, WS_TABSTOP
EDITTEXT 1005, 160, 39, 20, 12, ES_CENTER | ES_AUTOHSCROLL | ES_NUMBER
LTEXT "Green", -1, 4, 52, 21, 12, SS_CENTERIMAGE
SCROLLBAR 1010, 25, 52, 133, 12, WS_TABSTOP
EDITTEXT 1006, 160, 52, 20, 12, ES_CENTER | ES_AUTOHSCROLL | ES_NUMBER
LTEXT "Blue", -1, 4, 66, 21, 12, SS_CENTERIMAGE
SCROLLBAR 1011, 25, 66, 133, 12, WS_TABSTOP
EDITTEXT 1007, 160, 66, 20, 12, ES_CENTER | ES_AUTOHSCROLL | ES_NUMBER
CONTROL "", 1004, "HCF_ScreenPicker", 0, 4, 85, 27, 15
CONTROL "", 1003, "HCF_Color", 0x00000002, 34, 85, 27, 15
EDITTEXT 1012, 64, 86, 51, 12, ES_AUTOHSCROLL
LISTBOX 1008, 4, 106, 176, 25, LBS_SORT | LBS_OWNERDRAWFIXED | LBS_NOINTEGRALHEIGHT | LBS_MULTICOLUMN | LBS_DISABLENOSCROLL | NOT WS_BORDER | WS_HSCROLL | WS_TABSTOP
}

После редактирования:
130 DIALOG 0, 0, 204, 135
STYLE DS_SETFONT | DS_CENTER | WS_MINIMIZEBOX | WS_CAPTION | WS_SYSMENU
MENU 110
CAPTION "Hex Color Finder"
FONT 8, "MS Sans Serif"
{
COMBOBOX 1016, 4, 3, 68, 49, CBS_DROPDOWNLIST | WS_VSCROLL
CONTROL "", 1015, "ToolbarWindow32", 0x00000944, 74, 3, 126, 14
CONTROL "", 1020, "BUTTON", BS_OWNERDRAW | WS_TABSTOP, 4, 23, 18, 12
CONTROL "", 1000, "HCF_Color", 0x00000002, 25, 23, 14, 12
CONTROL "", 1001, "HCF_Gradient", 0, 42, 23, 141, 12
CONTROL "", 1002, "HCF_Color", 0x00000002, 186, 23, 14, 12
LTEXT "Красный", -1, 4, 39, 41, 12, SS_CENTERIMAGE
SCROLLBAR 1009, 45, 39, 133, 12, WS_TABSTOP
EDITTEXT 1005, 180, 39, 20, 12, ES_CENTER | ES_AUTOHSCROLL | ES_NUMBER
LTEXT "Зелёный", -1, 4, 52, 41, 12, SS_CENTERIMAGE
SCROLLBAR 1010, 45, 52, 133, 12, WS_TABSTOP
EDITTEXT 1006, 180, 52, 20, 12, ES_CENTER | ES_AUTOHSCROLL | ES_NUMBER
LTEXT "Синий", -1, 4, 66, 41, 12, SS_CENTERIMAGE
SCROLLBAR 1011, 45, 66, 133, 12, WS_TABSTOP
EDITTEXT 1007, 180, 66, 20, 12, ES_CENTER | ES_AUTOHSCROLL | ES_NUMBER
CONTROL "", 1004, "HCF_ScreenPicker", 0, 4, 85, 27, 15
CONTROL "", 1003, "HCF_Color", 0x00000002, 34, 85, 27, 15
EDITTEXT 1012, 64, 86, 51, 12, ES_AUTOHSCROLL
LISTBOX 1008, 4, 106, 196, 25, LBS_SORT | LBS_OWNERDRAWFIXED | LBS_NOINTEGRALHEIGHT | LBS_MULTICOLUMN | LBS_DISABLENOSCROLL | NOT WS_BORDER | WS_HSCROLL | WS_TABSTOP
}

0

5

А можно сделать проще: уменьшить ширину ползунков настроек цвета.

http://funkyimg.com/i/2PKZR.png

Соответственно сместить их все вправо по Х на ту же величину. При этом другие элементы управления изменять и корректировать нет нужды.  :)

+1

6

Mara написал(а):

А можно сделать проще: уменьшить ширину ползунков настроек цвета.
...
Соответственно сместить их все вправо по Х на ту же величину. При этом другие элементы управления изменять и корректировать нет нужды.  :)

Ага.  :yep:
Тоже хороший вариант.  :)

Тут смысл в чём:
Если у окна стоит свойство autosize, то оно сжимается до некоторых элементов лежащих на форме (основное окошко программы).
Некоторые элементы при этом, могут перекрываться основным окном.
Получается что то типа обрезанных элементов.
Но на самом деле, эти элементы как бы торчат за формой, но их не видно, и невидимые кусочки не активны.
К таким элементам относятся кнопки, эдиты, комбобоксы, лейблы, ...

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

0

7

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

Вот полный  код этого окна:

Код:
130 DIALOG 0, 0, 204, 135
STYLE DS_CENTER | WS_MINIMIZEBOX | WS_CAPTION | WS_SYSMENU
CAPTION "Hex Color Finder"
MENU 110
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
FONT 8, "MS Sans Serif"
{
   CONTROL "", 1016, COMBOBOX, CBS_DROPDOWNLIST | WS_CHILD | WS_VISIBLE | WS_VSCROLL | WS_TABSTOP, 4, 3, 68, 49 
   CONTROL "", 1015, "ToolbarWindow32", 0x50000944, 74, 3, 126, 14 
   CONTROL "", 1020, BUTTON, BS_OWNERDRAW | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 4, 23, 18, 12 
   CONTROL "", 1000, "HCF_Color", 0x50000002, 25, 23, 14, 12 
   CONTROL "", 1001, "HCF_Gradient", 0x50000000, 42, 23, 141, 12 
   CONTROL "", 1002, "HCF_Color", 0x50000002, 186, 23, 14, 12 
   CONTROL "Красный", -1, STATIC, SS_LEFT | SS_CENTERIMAGE | WS_CHILD | WS_VISIBLE | WS_GROUP, 4, 39, 41, 12 
   CONTROL "", 1009, SCROLLBAR, SBS_HORZ | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 45, 39, 133, 12 
   CONTROL "", 1005, EDIT, ES_CENTER | ES_AUTOHSCROLL | ES_NUMBER | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP, 180, 39, 20, 12 
   CONTROL "Зеленый", -1, STATIC, SS_LEFT | SS_CENTERIMAGE | WS_CHILD | WS_VISIBLE | WS_GROUP, 4, 52, 41, 12 
   CONTROL "", 1010, SCROLLBAR, SBS_HORZ | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 45, 52, 133, 12 
   CONTROL "", 1006, EDIT, ES_CENTER | ES_AUTOHSCROLL | ES_NUMBER | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP, 180, 52, 20, 12 
   CONTROL "Синий", -1, STATIC, SS_LEFT | SS_CENTERIMAGE | WS_CHILD | WS_VISIBLE | WS_GROUP, 4, 66, 41, 12 
   CONTROL "", 1011, SCROLLBAR, SBS_HORZ | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 45, 66, 133, 12 
   CONTROL "", 1007, EDIT, ES_CENTER | ES_AUTOHSCROLL | ES_NUMBER | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP, 180, 66, 20, 12 
   CONTROL "", 1004, "HCF_ScreenPicker", 0x50000000, 4, 85, 27, 15 
   CONTROL "", 1003, "HCF_Color", 0x50000002, 34, 85, 27, 15 
   CONTROL "", 1012, EDIT, ES_LEFT | ES_AUTOHSCROLL | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP, 64, 86, 51, 12 
   CONTROL "", 1008, LISTBOX, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_NOINTEGRALHEIGHT | LBS_MULTICOLUMN | LBS_DISABLENOSCROLL | WS_CHILD | WS_VISIBLE | WS_HSCROLL | WS_TABSTOP, 4, 106, 196, 25 
}

http://sh.uploads.ru/t/x2BmY.png

Отредактировано andrecool.68 (2019-01-02 22:18:47)

0

8

Tekton написал(а):

http://rgho.st/7FLnmqw8y

Этот файл запускается точно в таком же виде.

0

9

andrecool.68 написал(а):

Так я и изменял все что нужно на 20 этого достаточно, но после компиляции общий размер окна  получается неизменным(как в оригинале)

Откройте в реестре раздел

Код:
HKEY_CURRENT_USER\Software\NZ Software\Hex Color Finder\View\Main Window

и удалите параметр WindowPlacement.

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

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

Если вы воспользуетесь моим предложением, высказанным ранее, то ни вам, ни вашим пользователям не нужно будет заниматься редактированием реестра Windows:yep:

+2

10

Mara написал(а):

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

Наконец то дошло!
Всем спасибо за помощь!

Батником грохаю весь раздел

Код:
REG DELETE "HKEY_CURRENT_USER\Software\NZ Software" /f

Красота  :cool:

Отредактировано andrecool.68 (2019-01-03 12:42:45)

0


Вы здесь » BlackStar Localizations Studio » Общий форум » Редактор ресурсов не может изменить размер окна переводимой программы.