Вопрос № 143525: Здравствуйте Уважаемые Эксперты! У меня такой вопрос: я пишу программу и BorderStyle формы установлен на bsNone, тоесть у формы нет верхней панели и значков управления. Я создал свои значки управления для Close и Minimized. Для Minimized я написал...Вопрос № 143534: Здравствуйте уважаемые эксперты!!! Вопрос такой на форме есть кнопка со сосвойством modalresult = mrok, в onclick у этой кнопке есть некоторые условия. Как
отменить закрытие формы если перечисленные условия не выполнились???...Вопрос № 143563: Уважаемые эксперты! Помогите решить задачу. Есть текстовый файл, File.txt, в нём около 20 строк, состоящих в свою очередь из двух, трёх слов. Каким образом можно организовать массив (a[20]) этих строк, да так чтобы грузить его при запуске программ...
Вопрос № 143.525
Здравствуйте Уважаемые Эксперты! У меня такой вопрос: я пишу программу и BorderStyle формы установлен на bsNone, тоесть у формы нет верхней панели и значков управления. Я создал свои значки управления для Close и Minimized. Для Minimized я написал так: Form1.WindowState:=wsMinimized; однако форма сворачивается в прямоугольную область НАД синей панелью внизу экрана а не НА саму панель. Как сделать так чтобы форма сворачивалась НА СИНЮЮ ПАНЕЛЬ внизу экрана?
Отправлен: 10.09.2008, 00:41
Вопрос задал: 75kolyan (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Gladiator
Здравствуйте, 75kolyan!
Так напишите следующим образом:
Приложение:
Ответ отправил: Gladiator (статус: Студент)
Ответ отправлен: 10.09.2008, 01:15 Оценка за ответ: 5 Комментарий оценки: Огромное спасибо!!!
Всё так просто. Уже проверил отлично работает.
Ещё раз большое спасибо!
Отвечает: Genia007
Здравствуйте, 75kolyan! Попробуйте Application.Minimize; У меня прога сворачивается как надо.
Ответ отправил: Genia007 (статус: 8-ой класс)
Ответ отправлен: 10.09.2008, 12:29 Оценка за ответ: 5 Комментарий оценки: Большое спасибо!
Написал как вы посоветовали, всё работает.
Вопрос № 143.534
Здравствуйте уважаемые эксперты!!! Вопрос такой на форме есть кнопка со сосвойством modalresult = mrok, в onclick у этой кнопке есть некоторые условия. Как отменить закрытие формы если перечисленные условия не выполнились???
Отправлен: 10.09.2008, 08:48
Вопрос задал: PaTiFoN (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: akaDemik
Здравствуйте, PaTiFoN! Ответ напрашивается сам собой. В инспекторе объектов сделать ModalResult = mrNone. А в обработчике кнопки, в случае когда закрывать окно можно, присвоить значение руками, написав ModalResult := mrOk; Когда закрывать окно по условиям нельзя, просто установить mrNone и модальное окно не закроется.
Ответ отправил: akaDemik (статус: 2-ой класс)
Ответ отправлен: 10.09.2008, 09:25 Оценка за ответ: 4 Комментарий оценки: Тоже вариант. но есть одно но первый раз кнопка нажимается со свойством mrnone и форма не закрывается по первому клику, а закрывается только по второму, но в этом случае пользователь уже может изменить данные а у кнопки modalresult = mrOk... Есть другие варианты????
Отвечает: Лысенков Антон Анатольевич
Здравствуйте, PaTiFoN!
Обрабатывайте событие OnCloseQuery у закрывающейся формы. Если условия не выполнились, то параметру процедуры FormCloseQuery CanClose присваиваем значение false и форма не закрывается.
Ответ отправил: Лысенков Антон Анатольевич (статус: Студент)
Ответ отправлен: 10.09.2008, 10:13 Оценка за ответ: 5 Комментарий оценки: Спасибо!!! Просто и действует!!!
Вопрос № 143.563
Уважаемые эксперты! Помогите решить задачу. Есть текстовый файл, File.txt, в нём около 20 строк, состоящих в свою очередь из двух, трёх слов. Каким образом можно организовать массив (a[20]) этих строк, да так чтобы грузить его при запуске программы и пользоваться в любом модуле? И чтобы была возможность вносить в этот файл дополнительные строки. В смысле чтоб массив был резиновый, на всякий пж. Пробовал с директивой Public, но что-то не вяжется.
Отправлен: 10.09.2008, 13:52
Вопрос задал: Maximus777 (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 4)
Отвечает: Лысенков Антон Анатольевич
Здравствуйте, Maximus777!
Предлагаю использовать TStringList вместо массива.
Для этого:
В разделе var модуля, скажем, Unit1 прописываем:
Код:
Slist: Tstringlist;
Там где мы хотим подгрузить текстовый файл сначала создаем Tstringlist:
Код:
Slist:=Tstringlist.Create;
Затем подгружаем текст из файла:
Код:
slist.LoadFromFile('C:File.txt');
Чтобы прочитать первую строку из TStringList и вывести ее в Label1:
Код:
label1.Caption:=slist.Strings[0];
Чтобы записать во вторую строку
Tstringlist значение из Edit1:
Код:
slist.Strings[1]:=edit1.Text;
Чтобы получить доступ к slist из другого модуля приложения нужно в разделе uses прописать модуль в котором находится slist и обращаться т
ак:
Код:
unit1.slist
После если хотим сохранить изменения которые мы сделали в файл то писать так:
Код:
slist.SaveToFile('C:File.txt');
После использования "освобождаем" Slist:
Код:
slist.free
Ответ отправил: Лысенков Антон Анатольевич (статус: Студент)
Ответ отправлен: 10.09.2008, 14:34 Оценка за ответ: 5 Комментарий оценки: Сделал Copy/Paste с примера и всё заработало с первого раза. А когда я пробовал мучить Яндекс, то всяка пурга попадалась. Слава порталу rusfaq! Где ещё так быстро и грамотно можно получить ответ.
Отвечает: Шичко Игорь
Здравствуйте, Maximus777! Посмотрите код в приложении.
Приложение:
Ответ отправил: Шичко Игорь (статус: 2-ой класс)
Ответ отправлен: 10.09.2008, 15:17 Оценка за ответ: 5 Комментарий оценки: Пример абсолютно соответствует тому о чём я спрашивал. Но благодаря остальным примерам я теперь крут и меня не соблазнить AssignFile. Теперь я знаю что это вчерашний день.