ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.

14.08.2007, 15:25
|
|
Новичок
Регистрация: 08.05.2007
Сообщений: 4
Провел на форуме: 41202
Репутация:
0
|
|
Доброго времени суток!
Интерессует, как можно скопировать текст выделенный в любом активном приложении.
Т.е. открыто например опера\блокнот\ворд или что-то ещо, фокус сейчас находится у этого приложения и выделен какой-то текст, как из моей программы получить текст выделенный в этом приложении?
|
|
|

14.08.2007, 19:37
|
|
Участник форума
Регистрация: 11.07.2006
Сообщений: 125
Провел на форуме: 413927
Репутация:
71
|
|
лучше следи за буфером обмена и его изменением
|
|
|

14.08.2007, 19:53
|
|
Новичок
Регистрация: 08.05.2007
Сообщений: 4
Провел на форуме: 41202
Репутация:
0
|
|
Дело в том, что мне нужно именно создать "свой" буфер обмена только для текста, с хоткеями и вставкой текста в активный контрол все просто, а вот с копированием...
|
|
|

16.08.2007, 08:15
|
|
Познающий
Регистрация: 25.07.2007
Сообщений: 35
Провел на форуме: 114032
Репутация:
2
|
|
Народ, такая проблема...
Я на Дельфях налабал, программулинку-игрушку (сестренка, очень просила), но вот проблема... я лабал на Буке с разрешением экрана 1400х1050.. А у сестренке на компе разрешение намного меньше... Так вот форма не помещаеться на экране... Лабать на нужное разрешение, как то не правильно... Так вот вопрос... Как научить форму пропорционально уменьшаться вместе с элементами которые на ней, если она не помещаеться на экране? Может сталкивался кто???
ПС. Может кто то скажет, типа уменьши просто элементы на форме... Так вот скажу... Когда начинал лабать как то не подумал про разрешение... Но форма набита подзавязку картинками, поэтому уменьшать что то будет проблематично... Да и картинки в фотожопе нарезал именно под этот размер, а когда картинка меншье уже трудновато разобрать что там нарисованно... ПОэтому пока вижу выход только в учении формы пропорционально уменшаться... Заранее спасибо... Приму любые мысли и идеи...
ПС. Прошу прощения за мой русский... (когда сам прочитал, ничего не понял  )
Последний раз редактировалось b2mbey; 16.08.2007 в 08:22..
|
|
|

16.08.2007, 08:27
|
|
Постоянный
Регистрация: 20.01.2007
Сообщений: 705
Провел на форуме: 5381835
Репутация:
1329
|
|
b2mbey
Так вроде никак теперь не изменить. Попробуй поставить себе разрешение маленькое (типо 800x600) и запусти какую-нить софтину - она тоже будет не подходящего размера
|
|
|

16.08.2007, 08:35
|
|
Познающий
Регистрация: 25.07.2007
Сообщений: 35
Провел на форуме: 114032
Репутация:
2
|
|
Сообщение от FeraS
b2mbey
Так вроде никак теперь не изменить. Попробуй поставить себе разрешение маленькое (типо 800x600) и запусти какую-нить софтину - она тоже будет не подходящего размера
Да...нет... я встречал несколько раз софтины которые умели это делать... Редко конечно встречаются, но все же есть... Я думаю, что такое возможно... Только как???
|
|
|

16.08.2007, 08:46
|
|
Постоянный
Регистрация: 09.11.2006
Сообщений: 639
Провел на форуме: 1917742
Репутация:
541
|
|
тебе нужно при запуске считать разрешение экрана, и взависимости от разрешения динамически построить форму. Тоесть размеры ты должен указывать не в Object Inspector, а самом коде, например в OnCreate :
Код:
if (тут резалт от функц. получение разрешения 800x600) then
Form1.Width := нужное число;
Form1.Height := нужное число;
|
|
|

16.08.2007, 08:51
|
|
Познающий
Регистрация: 25.07.2007
Сообщений: 35
Провел на форуме: 114032
Репутация:
2
|
|
Сообщение от LEE_ROY
тебе нужно при запуске считать разрешение экрана, и взависимости от разрешения динамически построить форму. Тоесть размеры ты должен указывать не в Object Inspector, а самом коде, например в OnCreate :
Код:
if (тут резалт от функц. получение разрешения 800x600) then
Form1.Width := нужное число;
Form1.Height := нужное число;
Я как бы этот вариант тоже продумывал, но, как я уже писал выше, у меня на форме очень много элементов, которые тоже надо будет уменьшаться...
Хороший совет, но я его уже на крайний случай оставлю...
ПС. Прошу прошения за мой русский!
|
|
|

16.08.2007, 10:05
|
|
Новичок
Регистрация: 14.08.2007
Сообщений: 4
Провел на форуме: 5562
Репутация:
3
|
|
А как ты хочешь сделаешь меньше форму если не хочешь уменьшать картинки???
вот тут небольшая статейка с delphiworld помойму,(не дал ссылку так как статья давно лежит у меня на компе и адреса я не знаю) о том как нужно делать программы под разные разрешения:
Статья:
На ранней стадии создания приложения решите для себя хотите ли вы позволить форме масштабироваться. Преимущество немасштабируемой формы в том, что ничего не меняется во время выполнения. В этом же заключается и недостаток (ваша форма может быть слишком маленькой или слишком большой в некоторых случаях).
Если вы Е собираетесь делать форму масштабируемой, установите св-во Scaled=False и дальше не читайте.
В противном случае Scaled=True.
Установите AutoScroll=False. AutoScroll = True означает не менять размер окна формы при выполнении что не очень хорошо выглядит, когда содержимое формы размер меняет.
Установите фонты в форме на TrueType фонты, например Arial. !!!!: Если такого фонта не окажется на пользовательском компьютере, то Windows выберет альтернативный фонт из того же семейства. Этот фонт может не совпадать по размеру, что вызовет проблемы.
Установите св-во Position в любое значение, отличное от poDesigned. poDesigned оставляет форму там, где она была во время дизайна, и, например, при разрешении 1280x1024 форма окажется в левом верхнем углу и совершенно за экраном при 640x480.
Оставляйте по-крайней мере 4 точки между компонентами, чтобы при смене положения границы на одну позицию компоненты не " наезжали" друг на друга.
Для однострочных меток (TLabel) с выравниванием alLeft или alRight установите AutoSize=True. Иначе AutoSize=False.
Убедитесь, что достаточно пустого места у TLabel для изменения ширины фонта - 25% пустого места многовато, зато безопасно. При AutoSize=False Убедитесь, что ширина метки правильная, при AutoSize=True убедитесь, что есть ссвободное место для роста метки.
Для многострочных меток (word-wrapped labels), оставьте хотя бы одну пустую строку снизу.
Будьте осторожны при открытии проекта в среде Delphi при разных разрешениях. Свойство PixelsPerInch меняется при открытии формы. Лучше тестировать приложения при разных разрешениях, запуская готовый скомпилированный проект, а редактировать его при одном разрешении. Иначе это вызовет проблемы с размерами.
Не изменяйте свойство PixelsPerInch !
В общем, нет необходимости тестировать приложение для каждого разрешения в отдельности, но стоит проверить его на 640x480 с маленькими и большими фонтами и на более высоком разрешении
Уделите пристальное внимание принципиально однострочным компонентам типа TDBLookupCombo. Многострочные компоненты всегда показывают только целые строки, а TEdit покажет урезанную снизу строку. Каждый компонент лучше сделать на несколько точек больше.
как узнать разрешение
Разместите в обработчике события формы (которую вы хотите автомасштабировать) OnCreate следующую строку:
Если форма масштабируемая:
В событии формы OnCreate()
Код:
AdjustResolution(Self);
Код:
{ AdjustResolution ************************************************** ***** }
{ Данная процедура масштабирует все дочерние формы данной формы для }
{ соответствия текущему разрешению }
{ ************************************************** ********************** }
procedure AdjustResolution(oForm:TForm);
var
iPercentage:integer;
begin
if Screen.Width > 640 then
begin
iPercentage:=Round(((Screen.Width-640)/640)*100)+100;
oForm.ScaleBy(iPercentage,100);
end;
end;
Как получить разрешение монитора и т.д. на любом сайте по Дельфи...
|
|
|

16.08.2007, 10:36
|
|
Познающий
Регистрация: 25.07.2007
Сообщений: 35
Провел на форуме: 114032
Репутация:
2
|
|
Спс.. . о чень дельная инфа... думаю что теперь разберусь...
А насчет картинок, я имел ввиду, что если разрешение у монитора большое, то смотрим хорошие картинки, а если уж маленькое, то тогда придеться жертвовать...
Последний раз редактировалось b2mbey; 16.08.2007 в 10:38..
|
|
|
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|