Вопрос № 49990: Добрый день! Подскажите пожалуйста как при развертывании формы (State=wsMaximized) оно не развертывалось на весь экран, а чтобы сверху экрана оставалось свободное место, там бы отображалась главная форма программы, пример такой работы можно увидеть в...Вопрос № 49995: Уважаемые эксперты!
На форме лежит сетка Grid1: TStringGrid и кнопка CmdOk: TButton. Сетка состоит из двух столбцов и 21 строки, первая из которых фиксированная. По щелчку по кнопке CmdOk надо чтобы в сетки подсвечивалась та или иная строка (в пр...Вопрос № 50021: Здравствуйте!
Посмотрте эту статью:
http://www.realcoding.net/article/view/657
При использовании исходника из данной статьи дельфи меня посылает после строки:
addrport.sin_port - а именно после того как точку ставлю после аddrport и в...Вопрос № 50023: Здравствуйте!
Скажите, как можно в браузере на форме исключить копирование пользователем текста и картинок и как можно ащитить свою программу от принтскринов (т.е. мне нужно чтобы то, что находится в браузере на форме вообще невозможно было скопи...
Вопрос № 49.990
Добрый день! Подскажите пожалуйста как при развертывании формы (State=wsMaximized) оно не развертывалось на весь экран, а чтобы сверху экрана оставалось свободное место, там бы отображалась главная форма программы, пример такой работы можно увидеть в самой Delphi.
Программа пишется в Delphi 7. MDI формы не рекомендовать.
Спасибо.
Отправлен: 23.07.2006, 21:11
Вопрос задал: -=4G=- (статус: Посетитель)
Всего ответов: 3 Мини-форум вопроса >>> (сообщений: 2)
Отвечает: Mo-skin
Здравствуйте, -=4G=-!
procedure TForm1.FormPaint(Sender: TObject);
begin
if Form1.WindowState=wsMaximized then
begin
Form1.Height:=Form1.Height-100;
Form1.Top:=100;
end;
end;
--------- Чем больше женщину мы меньше,- тем меньше больше мы ее!
Ответ отправил: Mo-skin (статус: 2-ой класс)
Ответ отправлен: 23.07.2006, 21:30
Отвечает: Tsechoev Bagaudin
Здравствуйте, -=4G=-!
Если Вы заметили,в случае максимизации окна, то в том же Делфи, это окно разворачивыается на весь экран. Внизу код, который не позволяет дочерней форме разворачиваться на всю высоту экрана (насчет ширины думаю разберетесь сами).
Удачи!
Приложение:
--------- Есть только одно зло - невежество, и только одно благо - знания
Ответ отправил: Tsechoev Bagaudin (статус: Студент)
Ответ отправлен: 23.07.2006, 22:33
Отвечает: Лукьяненко Алексей Валериевич
Здравствуйте, -=4G=-!
Есть у формы свойство Constraints, у него надо выставить MaxHeight. Поведение получите, как у главного окна Delphi. Для оставления места сверху поставьте обработчик OnResize и там устанавливайте свойство Top в нужное Вам значение
Уважаемые эксперты!
На форме лежит сетка Grid1: TStringGrid и кнопка CmdOk: TButton. Сетка состоит из двух столбцов и 21 строки, первая из которых фиксированная. По щелчку по кнопке CmdOk надо чтобы в сетки подсвечивалась та или иная строка (в примере с индексом i, этой переменной на этапе тестирования я принудительно присвоил значение 20). Для этого написал код (в приложении). В принципе все работает, но есть одна проблема. Если подсвечиваемая строка выходит за границы, пользователю, чтобы увидеть какая строка подсвечена, приходится
самому прокручивать вертикальную прокрутку сетки Grid1. Как сделать, чтобы выделенная строка сама показалась пользователю, без его лишних манипуляций?
С уважением,
Александр (zimorodokbrest@rambler.ru)
Ответ отправил: Physicist (статус: 9-ый класс)
Ответ отправлен: 23.07.2006, 23:27
Отвечает: kopfschwarz
Здравствуйте, Зимородкин Александр!
А так, по-моему, лучше:
begin
i:=20;
Form1.StringGrid1.Row:=i;
Form1.StringGrid1.SetFocus;
MyRect.Top:=i;
myRect.Bottom := i;
Form1.StringGrid1.Selection:=MyRect;
end;
Ответ отправил: kopfschwarz (статус: 4-ый класс)
Ответ отправлен: 23.07.2006, 23:35
Вопрос № 50.021
Здравствуйте!
Посмотрте эту статью:
http://www.realcoding.net/article/view/657
При использовании исходника из данной статьи дельфи меня посылает после строки:
addrport.sin_port - а именно после того как точку ставлю после аddrport и выдаёт сообщение: [Pascal Error] Unit1.pas(1): Unable to invoke Code Completion due to errors in source code.
Отправлен: 24.07.2006, 10:42
Вопрос задал: KuchumHan (статус: Студент)
Всего ответов: 3 Мини-форум вопроса >>> (сообщений: 2)
Отвечает: sir henry
Здравствуйте, KuchumHan!
А в строке USES Вы WinSock дописать не забыли случайно? :-)
Ответ отправил: sir henry (статус: Академик) Россия, Красноярск ---- Ответ отправлен: 24.07.2006, 10:56 Оценка за ответ: 5 Комментарий оценки: Эксплорер незагрузил это место :-)
Отвечает: kopfschwarz
Здравствуйте, KuchumHan!
Так программуля вообще не рабочая :) Что это за нонсенс такой (см.ниже)?
while index
begin
...
end;
1) index не типа boolean;
2) не хватает do.
И еще вы забыли Winsock в Uses дописать...
Ответ отправил: kopfschwarz (статус: 4-ый класс)
Ответ отправлен: 24.07.2006, 11:08 Оценка за ответ: 5
Отвечает: Сухомлин Кирилл Владимирович
Здравствуйте, KuchumHan!
Да, потерялась у них часть строки. По комментариям к коду удалось восстановить, что там должна была быть такая строчка:
while (index <= SpinEdit2.Value) do begin
А эти заглавные красные буквы... А уж исходный код вообще надо в теги
оформлять :-/ В общем, заодно поищите сайт, где все аккуратнее сделано. Например, http://www.cracklab.ru/ =)
Ответ отправил: Сухомлин Кирилл Владимирович (статус: Студент)
Ответ отправлен: 27.07.2006, 09:32 Оценка за ответ: 5 Комментарий оценки: Теперь жалобится вот так: [Error] Unit1.pas(39): Undeclared identifier: 'TSocet' [Error] Unit1.pas(50): Undeclared identifier: 'Socet' [Error] Unit1.pas(59): Undeclared identifier: 'SpinEdit2' [Error] Unit1.pas(69): '.' expected but ';' found [Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas'
Вопрос № 50.023
Здравствуйте!
Скажите, как можно в браузере на форме исключить копирование пользователем текста и картинок и как можно ащитить свою программу от принтскринов (т.е. мне нужно чтобы то, что находится в браузере на форме вообще невозможно было скопировать)?
Отвечает: Сухомлин Кирилл Владимирович
Здравствуйте, Томша Павел!
Копировать текст итак обычно нельзя. Картинки - не помню.
Для защиты от printscreen-ов можно либо вешать глобальный HOOK на клавиатуру - на клавишу PrintScreen (об этом есть на delphiworld.narod.ru)
либо использовать overlay-и (по-моему, так называется), как в видеоплеерах.
Только не забывайте, что всегда есть еще какие-дь хитрые способы. Например послать броузеру сообщения средствами Windows, в котором передать команду: "Сохранить страницу в виде картинки". Не уверен, что это абсолютно точно возможно, но предупредить вас могу =)
Ответ отправил: Сухомлин Кирилл Владимирович (статус: Студент)
Ответ отправлен: 24.07.2006, 10:59 Оценка за ответ: 5
Отвечает: Савенко Вадим Иванович
Здравствуйте, Томша Павел!
Где-то читал, что можно поверх картинки положить еще одну картинку, содержащую прозрачный фон. Таким образом Ваша картинка будет видна, но копироваться будет верхняя, с прозрачным фоном. Не знаю, хороший это способ или нет - сам не пробовал. Но, как говорится "что один человек сделал, другой завсегда сломать может".
Ответ отправил: Савенко Вадим Иванович (статус: 4-ый класс)
Ответ отправлен: 24.07.2006, 11:57 Оценка за ответ: 5