Приветствую Вас, =FeanaR=! И я не делал, но если надо и не получится, то можно попробовать А так, из нерассмотренных варианатов: сформировать отчет (Rave) и .... Ответ отправлен: 22.05.2004, 17:32 Отправитель: Boriss Отвечает Pawel
Здравствуйте, =FeanaR=! Распеяатать конву StringGrid, как картинку. Ответ отправлен: 23.05.2004, 18:12 Отправитель: Pawel Отвечает CrackLab
Здравствуйте, =FeanaR=! Я вообще ни разу не делал такого... Но чисто если подумать, то можно попробовать следующие варианты: 1) Скачать и использовать компонент ProfGrid (предварительно скопировав в него ячейки из StringGrid. 2) Растянуть StringGrid на всю форму и распечать форму методом Print 3) Экспортировать таблицу в Excel и распечатать сразу оттуда. 4) Использовать различные компоненты для создания отчетов (Reports) Еще раз повторюсь сам ни разу не пробовал распечатывать StringGrid так что камнями плиз не кидаться =) Ответ отправлен: 22.05.2004, 01:32 Отправитель: CrackLab Отвечает sir henry
Добрый день, =FeanaR=! Смотрите в приложении. Сам не проверял.
Приложение: Ответ отправлен: 22.05.2004, 04:22 Отправитель: sir henry
Вопрос № 1549
Доброе время суток ! Пишу модуль "платежные поручения" и "приход/расход на складе" и в том и в другом случае Id записей идет с генератора в триггере, а номер документа должен меняться при проверке, наступил ли "новый год" в программе, т.е. системная дата больше максимальной даты в базе платежек. С платежками ладно, я еще как то разберусь, там пока один пользователь. А с приходом/расходом товаров, имеется ввиду номер документа - ЭТО БОЛЬШАЯ ПРОБЛЕМА, т.к. если делать счетчик документов, исходя из временных переменных, то может возникнуть конфликт уникальности, как быть с генератором, если внутри условия триггера он не может выполнить : SET GENERATOR NewNumPlat to tmpNum ? Как сделать так чтобы и рыбку съесть и пользователей не обидеть, т.е чтобы офиц.номер документа писался с генератора ? Может есть другое решение проблемы
? Буду рад слышать любые по теме !
Здравствуйте, Jiny! Я, честно говоря, не понял, каким образом у Вас номер платежки образуется. Если путем прибавления еденички к номеру последнего документа, то не вижу, на чем тут можно заморачиваться. Ну прибавили и занесли в соответствующее поле. По полю должен быть уникальный индекс. Если ошибка уникальности, то сгенерировать номер еще раз. Я не думаю, чтобы номера у Вас добавлялись по 10 раз в секунду :)). Ответ отправлен: 22.05.2004, 10:20 Отправитель: sir henry Отвечает Pawel
Приветствую Вас, Jiny! Не понятно как ВЫ образуете номер документа, и что за " конфликт уникальности" Ответ отправлен: 23.05.2004, 18:14 Отправитель: Pawel
Вопрос № 1550
Здравствуйте. Ни к кого нет инфы для свойств компонентов делфы. А то какой учебник ни читаю, по каждому компоненту - 5-6 свойств описано, тогда как в обжект инспекторе их штук 30. Заранее благоданен.
Доброе время суток, ВЕЧНЫЙЛАМЕР! А хелп в дельфях на что? Ответ отправлен: 23.05.2004, 09:44 Отправитель: Snowm@n Отвечает Boriss
Доброе время суток, ВЕЧНЫЙЛАМЕР! Учите аглийский - источник знаний, тогда увидите, что в стандартной справке есть все. А так, у Дарахвелидзе и Маркова много описано, или упомянуто Ответ отправлен: 24.05.2004, 16:30 Отправитель: Boriss Отвечает CrackLab
Доброе время суток, ВЕЧНЫЙЛАМЕР! В общем-то это нормально, у компонента всегда 5-6 главных свойств, которые и описываются в книгах. Вы всегда можете посмотреть справку по любому интересующему вас свойству. Выделите компонент, нажмите CTRL + F1 для вызова справки и вверху окна справки выберите Properties. Перед вами покажутся все свойста компонента. По каждому из них можно посмотреть справку. Если английский язык в справке вас напрягает, то вы можете найти хелп на русском, благо в интернете такое есть. Ответ отправлен: 22.05.2004, 20:11 Отправитель: CrackLab Отвечает Pawel
Доброе время суток, ВЕЧНЫЙЛАМЕР! RTFM. Всё это есть в хелпе по дельфи. Ответ отправлен: 23.05.2004, 18:22 Отправитель: Pawel Отвечает samum2000
Приветствую Вас, ВЕЧНЫЙЛАМЕР! Все 30 штук в учебниках описывать не будут, потому что 25 из них одни и те же в большинстве компонент. А подробнее о каждом свойстве можно узнать во встроенной справке (выбираешь интересующее тебя свойство и нажимаеш F1). -------------------------- -=Experts helper: testmode=- Ответ отправлен: 25.05.2004, 11:37 Отправитель: samum2000 Отвечает sir henry
Приветствую Вас, ВЕЧНЫЙЛАМЕР! Слишком много у этих компонентов общих свойств, поэтому для каждого компонента описывается только то, что нет у других. Возмите книгу Фаронова "Дельфи. Учебный курс". Она хоть и не блещет крутизной материала, но коротенько о многом (в том числе и об индивидуальных свойствах и общих свойствах компонентов :)) там написано. Ответ отправлен: 24.05.2004, 05:17 Отправитель: sir henry
Вопрос № 1551
Здравствуйте. Вопрос: не подскажите, как запретить доступ к текстовому файлу, чтобы обращаться к нему могло только приложение, но не пользователь? Если не подскажите, то хотябы покажите в какую сторону думать. Заранее спасибо.
Здравствуйте, ВЕЧНЫЙЛАМЕР! Однако, приложение то Вы запускаете от имени определенного пользователя :)). В NTFS файл может иметь различные уровни доступа, поэтому тот диск, где хранится Ваш файл нужно переформатировать в NTFS, а потом на вкладке "Безопасность" прописать КАКИЕ пользователи (или аккаунты) имеют к нему доступ и какого вида этот тдоступ у того или иного аккаунта (только чтение, чтение-запись и т.п.). Ответ отправлен: 24.05.2004, 05:49 Отправитель: sir henry Отвечает Boriss
Доброе время суток, ВЕЧНЫЙЛАМЕР! Способ стандартный - открыть файл с исключительными правами. Флаг - fmShareExclusive = $0010; Но когда Ваше приложение, ламеры временные опять смогут его менять. Выход - как-то спрятать среди системных с имеменм, похожим на имя системного. Авось не заметят Ответ отправлен: 24.05.2004, 16:28 Отправитель: Boriss Отвечает Snowm@n
Добрый день, ВЕЧНЫЙЛАМЕР! Вот писал когда-то что-то подобное: procedure TForm1.Button1Click(Sender: TObject); var S:TFileStream; begin if not OpenDialog1.Execute then exit; S:=TFileStream.Create(OpenDialog1.FileName, fmShareExclusive); Application.MessageBox('Файл защищен!','Сообщение',mb_Ok or mb_IconInformation); end; Основная идея - работа с файловыми потоками. Этот пример полностью запрещает доступ к файлу, о других возможностях читай хелп по потокам. Ответ отправлен: 23.05.2004, 09:43 Отправитель: Snowm@n Отвечает Andy
Здравствуйте, ВЕЧНЫЙЛАМЕР! Можно, например, заархивировать rar'ом с оооочень длинным и сложным паролем и зашить его в прогу. А при использовании разархивировать. UnRar.dll легко найти. Ответ отправлен: 24.05.2004, 07:12 Отправитель: Andy Отвечает CrackLab
Здравствуйте, ВЕЧНЫЙЛАМЕР! Никак не запретить. Шифруйте файл или делайте его не текстовым а определенного типа ( file of MyType ) Ответ отправлен: 22.05.2004, 20:09 Отправитель: CrackLab Отвечает Pawel
Здравствуйте, ВЕЧНЫЙЛАМЕР! Использовать при открытии параметр fmShareExclusive и просто держать открытым. Ответ отправлен: 23.05.2004, 18:23 Отправитель: Pawel Отвечает futility
Приветствую Вас, ВЕЧНЫЙЛАМЕР! Можно, тупо до безпредела Объяви его ридонли, а пусть приложение само это отменяет, делает что хочет, и обратно все ставит на место... Ответ отправлен: 24.05.2004, 13:56 Отправитель: futility
Форма отправки вопроса
Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+
или отправлять вопросы с сайта по адресу:
http://rusfaq.ru/cgi-bin/Message.cgi.