Вверх ↑
Этот топик читают: Гость
Ответов: 1942
Рейтинг: 627
#16: 2013-11-28 00:43:42 ЛС | профиль | цитата
nesco писал(а):
Задачи какие-то ты ставишь малореальные
Вот вам пожалуйста реальная задача:
Имеется дочернее окно в программе: code_32427.txt (приблизительный набросок интерфейсных элементов).
Запускается программа на разных компьютерах с разным разрешением и шириной экрана. Каждый раз при запуске этого окна приходиться растягивать. Как сделать сохранение в файл с последующей загрузкой при запуске окна, установленных пользователем размеров интерфейса?
карма: 9

0
файлы: 1code_32427.txt [1KB] [178]
Разработчик
Ответов: 25681
Рейтинг: 2087
#17: 2013-11-28 01:41:47 ЛС | профиль | цитата
sla8a писал(а):
Как сделать сохранение в файл с последующей загрузкой при запуске окна, установленных пользователем размеров интерфейса?

Да погоди, я еще не добрался до получения свойств, только установку сделал.
карма: 20

0
Ответов: 16884
Рейтинг: 1237
#18: 2013-11-28 10:44:07 ЛС | профиль | цитата
sla8a писал(а):
Вот вам пожалуйста реальная задача
.........
Как сделать сохранение в файл с последующей загрузкой при запуске окна, установленных пользователем размеров интерфейса?
Задача реальная и давно решена.
sla8a, а это не мясо ?
ini-файл писал(а):
SavePosName=Если не пустое - автоматически запоминать позицию и размер окна на экране. Если указано расширение .ini и имя секции (например MyProject.iniMainForm), то сохранение идет в INI-файл. Иначе - это имя ключа в секции реестра HKEY_CURRENT_USERSoftware|2|
Откуда взял
sla8a писал(а):
Каждый раз при запуске этого окна приходиться растягивать.


Алаверды :

Add(MainForm,10554026,161,126)
{
Width=511
Height=361
}
Add(ChildFormEx,13613059,210,126)
{
}
BEGIN_SDK
Add(EditMultiEx,15549574,21,21)
{
Width=706
Height=340
}
Add(MainForm,2178269,154,98)
{
Left=35
Top=105
Width=553
Height=377
SavePosName="MyProject.iniForm2"
}
Add(Memo,7149315,378,133)
{
Width=310
Height=350
Align=1
}
Add(ChildPanelEx,1134722,462,133)
{
}
BEGIN_SDK
Add(EditMultiEx,2610777,21,21)
{
Width=398
Height=319
}
Add(Panel,7362733,35,105)
{
Left=320
Width=225
Height=350
Align=5
}
Add(MTStrTbl,9214632,294,84)
{
Left=2
Top=2
Width=221
Height=135
Align=2
Columns=#1:1|1:2|1:3|
}
Add(Splitter,16079114,294,154)
{
Left=2
Top=137
Width=221
Height=13
Align=2
}
Add(ListBox,3147658,273,217)
{
Left=2
Top=150
Width=221
Height=198
Align=5
}
END_SDK
Add(Splitter,11605168,420,133)
{
Left=310
Width=10
Height=273
Align=1
}
END_SDK


карма: 24
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 25681
Рейтинг: 2087
#19: 2013-11-28 12:53:16 ЛС | профиль | цитата
Tad писал(а):
а это не мясо

Это только размер формы сохранит, а вот сплиттер не учтет, увы
карма: 20

0
Ответов: 1942
Рейтинг: 627
#20: 2013-11-28 20:01:11 ЛС | профиль | цитата
Tad, ввел вас в заблуждение своим объяснением. Но nesco прав, смысл именно в сохранении размеров контролов измененных пользователем при перетаскивании сплиттера.
nesco, у вашего варианта преимущество, появляется возможность изменения языка интерфейса. Вот внес небольшие доработки в ваш вариант:
1. Добавил свойство strings для добавления нескольких строк (memo=strings=1строка|2строка|3строка)
2. Возможность установки цветов (свойство color и fontcolor) по названию (red, green, btnface и т.п.).
3. Добавил свойство redraw для перерисовки контрола.
Еще в архиве пример как можно изменять язык интерфейса. Удобен ваш вариант тем, что задается имя нужным кнопкам (btn_close - кнопка с надписью закрыть в разных формах)и все будут переводиться одной записью. Так же обратите внимания на то что нет возможности изменять названия заголовка формы. А так очень даже удобно.
скачать архив

карма: 9

0
файлы: 1test_00634.zip [4.3KB] [132]
Разработчик
Ответов: 25681
Рейтинг: 2087
#21: 2013-11-29 11:58:00 ЛС | профиль | цитата
sla8a, давай ты не будешь вносить пока в мой элемент никаких изменений, а дождешься хотябы альфа версии. Потом будем применять различные дополнения. Сейчас я не буду пока рассматривать твой вариант, тк элемент претерпевает некоторые, довольно существенные изменения
карма: 20

0
Разработчик
Ответов: 25681
Рейтинг: 2087
#22: 2013-11-29 12:06:30 ЛС | профиль | цитата
Продолжение безобразия -- версия 2.00

project_adjustcontrols_002.zip

Поддерживает мультистрочность
Поддерживает установку Caption форм
Подерживает цвета по названию.
Позволяет создавать строки парметров, понятные компоненту INI

Перерисовка не добавлена, тк это метод а не свойство.

sla8a, потестируй
карма: 20

1
файлы: 1project_adjustcontrols_002.zip [13.6KB] [197]
Голосовали:sla8a
Ответов: 4674
Рейтинг: 516
#23: 2013-11-29 21:11:27 ЛС | профиль | цитата
nesco, вот из принципа ответь: "Сколько нужно ждать поправок в HiAsm? Вот допустим "Ваше Величество" или "Ваше Высочество" добавите в среду (пакет) то или это, бывают и аргументы реальные что надо ответ один проект не поддерживается

[flood]Вы пока тестируете у меня уже почти как год "задуманное" работает, но тут дело принципа да?[/flood]
карма: 6

0
Гость
Ответов: 17029
Рейтинг: 0
#24: 2013-11-29 21:30:04 правка | ЛС | профиль | цитата


Редактировалось 5 раз(а), последний 2020-03-01 21:15:34
карма: 0

0
Гость
Ответов: 17029
Рейтинг: 0
#25: 2013-11-29 21:30:06 правка | ЛС | профиль | цитата


Редактировалось 5 раз(а), последний 2020-03-01 21:15:37
карма: 0

0
Ответов: 16884
Рейтинг: 1237
#26: 2013-11-29 21:30:46 ЛС | профиль | цитата
Выше я.
Ещё и сдвоило.
Видно одно пошло прямым путём, а второе вокруг земли.
andrestudio, старинную русскую мудрость про калашный ряд знаешь ?
карма: 24
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 4674
Рейтинг: 516
#27: 2013-11-29 21:47:08 ЛС | профиль | цитата
Tad, а что другого сравнения не нашлось Да собственно и фиг с ним. Могу биться об заклад что и 1000 ярых сторонников нет (такова была политика и сопровождение продукта) хотя кто пальцы гнул тех и не сосчитать
карма: 6

0
Ответов: 1942
Рейтинг: 627
#28: 2013-11-29 23:41:52 ЛС | профиль | цитата
nesco, работает без ошибок, но есть замечания:
1. Зачем "список исключенных имен интерфейсных элементов"? Не удобно. Предположим нужно узнать как выставлены параметры некоторых флажков и выпадающих списков, а схема с большим количеством интерфейсных элементов, придется перечислять всех которые не нужны. Проще написать нужные или all чтоб получить все.
2. Тоже что и с именами в первом пункте, со свойствами. Если мне нужно сохранить только позиции окон (left,top), то зачем мне все остальное. Если и понадобиться все то, "all".
3. Свойство string лучше добавить, проще его дописать, чем потом объяснять почему caption и text есть, а string нет.

andrestudio, зря вы так на nesco "наезжаете". Понимаю и вас, но вместо того чтобы спорить, вам проще у Dilma попросить доступ, и вносить изменения самостоятельно. Но только не забывайте что это еще и ответственность, готовы ли вы к ней?
карма: 9

0
Ответов: 1710
Рейтинг: 120
#29: 2013-11-30 00:08:22 ЛС | профиль | цитата
Я новый человек в этой тусовке, многого не знаю, очевидно надо все темы прочитать, чтобы адекватно понимать сложившийся сленг, и вообще, о чём речь.
На это уйдёт чуть меньше времени, чем существует сайт, это радует, но в тоже время и тревожит.
(Это один из недостатков.)
С другой стороны, пока глаз не замылился - первые впечатления, а они всегда самые верные.
0. Идея великолепная!!!
1. "Вы можете орать тут хоть до ночи,
Но пленку я давно истратил всю!"
1000 ярых сторонников нет (такова была политика и сопровождение продукта)

nesco, вот из принципа ответь: "Сколько нужно ждать поправок в HiAsm? Вот допустим "Ваше Величество" или "Ваше Высочество" добавите в среду (пакет) то или это, бывают и аргументы реальные что надо ответ один проект не поддерживается

Да, всегда найдутся такие (идиоты), кому закон не писан, и надо отвечать, "Читай wiki" . Но самое интересное он и не писан.
wiki - Это детский лепет, - и то, что-то. А куда гараздей, что нет описаний на новые компоненты и тем паче что нет стандарта, взять хотябы Win.pas.
Но "проект не поддерживается", тогда чего копья ломать, так потусоваться и только.
Пока не будет системы, можно камаров бить до утра каждую ночь, нежели поставить маскитную сетку на окна.
1. нужно ввести Жосткий ценз на компоненты - описание, поддержа определённых библиотек, и т.д.
2. но тогда в первую очередь, необходимо в обязательном порядке, обновление актуальной версии.
Тогда не будет казусов, что один дополнил дремучую версию Win.pas, чем то хорошим, и другой, не мение замечательным туже дремучую версию, а в итоге, надо пользователю скрещивать ужа с ежом самому.
Пока так обстоят дела, - дурацкие вопросы не закончатся по определению.
P.S.
В том виде, каким был создаан проект, он выродился.
Но. Но перерождение на лицо.
И уж давно над перейти на delphi 7 - на дворе уже другой век.



карма: 5

0
Разработчик
Ответов: 25681
Рейтинг: 2087
#30: 2013-11-30 01:12:28 ЛС | профиль | цитата
sla8a писал(а):

1. Зачем "список исключенных имен интерфейсных элементов"? Не удобно. Предположим нужно узнать как выставлены параметры некоторых флажков и выпадающих списков, а схема с большим количеством интерфейсных элементов, придется перечислять всех которые не нужны. Проще написать нужные или all чтоб получить все.
2. Тоже что и с именами в первом пункте, со свойствами. Если мне нужно сохранить только позиции окон (left,top), то зачем мне все остальное. Если и понадобиться все то, "all".
3. Свойство string лучше добавить, проще его дописать, чем потом объяснять почему caption и text есть, а string нет.

Про 1-й и 2-й пункт я понял раньше и уже реализовал в следующей версии.
По string я не совсем согласен. Он у тебя работает точно так же как и Text, вот только Text отрабатывается быстрее, чем Add

flint2 писал(а):
так потусоваться и только

Ну, мы тут просто так и тусуемся. Главный уже давно на все забил. Но не нравится пакет Windows, можете перейти на более новый пакет -- #CNET, там и автор в постоянной доступности. Для создания простеньких приложений, не навороченных визуально и не требующих сверхбыстродействие, вполне хватает пакета Windows.
------------ Дoбавленo в 01.12:

Последний релиз, но пока без string, который для меня остается под вопросом

project_adjustcontrols_003.zip

sla8a, тестируй уже эту версию. Да и пример нужно бы эффектней сделать, но с возможностью записи/чтения INI
карма: 20

2
файлы: 1project_adjustcontrols_003.zip [14.2KB] [158]
Голосовали:sla8a, miver
Сообщение
...
Прикрепленные файлы
(файлы не залиты)