![]() |
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]() ![]() ![]() |
|
Vit |
|
|||
![]() Vitaly Nevzorov ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 10964 Регистрация: 25.3.2002 Где: Chicago Репутация: 48 Всего: 207 |
Подумаю,может и правда сделаю в виде нескольких вариантов
-------------------- With the best wishes, Vit I have done so much with so little for so long that I am now qualified to do anything with nothing Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru |
|||
|
||||
Cheba |
|
|||
![]() pointless one ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 1777 Регистрация: 27.11.2003 Где: /dev/null Репутация: 1 Всего: 62 |
И можно сделать, чтобы если несколько частей в одной папке, то к любой можно было добраться из любого файла. Точно знаю, что html-help'ы можно связывать.
|
|||
|
||||
Medved |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 7209 Регистрация: 15.9.2002 Где: Kazakhstan, Astan a Репутация: 14 Всего: 154 |
Кстати Вит, размер FAQ это действительно проблема. ПО крайней мере для USSR-ного пользователя, учитывая что большинство сидит на dual-up. Может как нибудь попробовать его оптимизировать. Или сжать чем нибуть сам exe-шник.
-------------------- |
|||
|
||||
Monty |
|
|||
![]() Advanced Lamer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3511 Регистрация: 3.4.2003 Где: Гваделупа Репутация: нет Всего: 27 |
Поправка: Протектор Armadillo этого минуса не имеет ![]() ![]() -------------------- ... О, вещая моя печаль, О, тихая моя свобода И неживого небосвода Всегда смеющийся хрусталь! |
|||
|
||||
Paradox |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1135 Регистрация: 18.11.2002 Где: Россия Репутация: нет Всего: 1 |
Vit не знаю видел или нет, и включены ли описанные здесь вопросы в наш FAQ, но будет время зайди глянь, я бы мог повыбирать но к сожалению не настолько хорошо знаком с содержанием нашего FAQ, так как заглядываю только по необходимости
ИМХО вышеописанные примеры могут быть отттуда, поэтому может там есть еще что-нибудь чего нет у нас -------------------- --- |
|||
|
||||
StayAtHome |
|
|||
![]() Домосед ![]() ![]() Профиль Группа: Участник Сообщений: 456 Регистрация: 26.1.2004 Где: Украина Репутация: 1 Всего: 16 |
Ну что ж... Продолжим!
![]() Smart Browse For Folder example of smart usage of BrowseForFolder API function including - repositioning and resizing browse window - adding a listbox, static elements and a button - catching button click - filling the listbox with file names - custom information field - custom condition for allowing folder selection - creating new folder - !!! REFRESHING TREE !!! after folder creation (thanks to Leonid Kunin for his idea published at http://codeguru.earthweb.com) Copyright © Konstantin Polyakov, 2001 FIDO: 2:5030/542.251 e-mail: [email protected] Web: http://kpolyakov.newmail.ru
|
|||
|
||||
StayAtHome |
|
||||||||
![]() Домосед ![]() ![]() Профиль Группа: Участник Сообщений: 456 Регистрация: 26.1.2004 Где: Украина Репутация: 1 Всего: 16 |
Обработка сообщения о максимизации окна
Q: Я хочу обрабатывать сообщение об максимизации окна и изменить его размер вручную. Я написал обработчик для SC_MAXIMIZE. Но это мне дает ошибку duplicate virtual method error (?). A: Вместо этого обрабатывайте сообщение WMGetMinMaxInfo.
------------------------------------------------------------------------------- Как я могу вставить текст в TMemo в позиции курсора? Я хочу использовать клавишу для вставки некоторых стандартных фраз. Я решил эту проблему путем использования TEdit из которого я копирую текст в clipboard и вставляю его в Memo. Это удовлетворительно, но я не хочу использовать clipboard в своей программе, к тому же пользователь может также вставить кое что свое, что нежелательно. === 1 === Используйте Windows API сообщение EM_REPLACESEL EM_REPLACESEL wParam = 0; /* not used, must be zero */ lParam = (LPARAM) (LPCSTR) lpszReplace; /* address of new string */ В программе пошлите сообщение EM_REPLACESEL для замены текущего выбора текстом в параметре lpszReplace. Параметр Описание lpszReplace содержит замещающий текст Возврат нет возвращаемого значения Комментарий Исползуйте EM_REPLACESEL когда вы хотите заменить тоько часть текста. Если вы желаете заместить весь текст то используйте сообщение WM_SETTEXT. Если выделение отсутствует то, замещаемый текст вставляется в текущую позицию. === 2 === для вставки строки в memo :
для вставки и замены:
------------------------------------------------------------------------------- Как заставить курсор перемещаться только x-координате В вашем обработчике OnMouseMove сделайте следующее:
Переменная lockY определяет желаете ли вы подобное поведение курсора или нет. |
||||||||
|
|||||||||
StayAtHome |
|
|||
![]() Домосед ![]() ![]() Профиль Группа: Участник Сообщений: 456 Регистрация: 26.1.2004 Где: Украина Репутация: 1 Всего: 16 |
Я хочу узнать номер текущей записи для DBase таблицы.
Если набор данных является таблицей Paradox или dBASE то номер записи может быть получен путем ряда вызовов BDE API. BDE не поддерживает нумерацию для SQL таблиц, но если ваш сервер поддерживает это, то вы должны ознакомиться с соотвествующей документацией на сервер. Следующая функция получает параметр любого компонента наследника от TDataset (например TTable, TQuery, TStoredProc) и возвращвет номер текущей записи (больше чем 0) если это таблица Paradox или dBASE. В других случая возвращается 0. Примечние: для dBASE это номер физической записи.
|
|||
|
||||
StayAtHome |
|
||||||
![]() Домосед ![]() ![]() Профиль Группа: Участник Сообщений: 456 Регистрация: 26.1.2004 Где: Украина Репутация: 1 Всего: 16 |
Как я могу назначить заголовок для диспетчера печати?
------------------------------------------------------------------------------- Существует ли способ вызвать метод Hint напрямую? Я хочу по нажатию на определенную клавишу показать Hint для другого компонента после 1 секунды или более и пропасть после отпускания клавиши.
------------------------------------------------------------------------------- Есть ли какой либо метод вызываемый при переходе на другую строку в TDBGrid? Вы можете использовать метод OnDataChange компонента Datasource к которому подсоединен DBGrid. Если свойство State равно dsBrowse то это означает переход на другую строки (или открытие таблицы). Почему нет этого события у самого dbGrid? Потому что grid не единственный компонент в который используется для показа данных из таблицы. Использование Datasource обеспечивает централизованное управление данным событием. ------------------------------------------------------------------------------- Как можно определить в обработчике MenuItem для PopupMenu, на какой компоненте было произведено нажатие правой кнопки мыши? Для этого нужно воспользоваться свойством PopupMenu.PopupComponent, например:
|
||||||
|
|||||||
StayAtHome |
|
|||
![]() Домосед ![]() ![]() Профиль Группа: Участник Сообщений: 456 Регистрация: 26.1.2004 Где: Украина Репутация: 1 Всего: 16 |
Почему экземпляры наследников TFiled, после вставки их через FieldEditor,
присутствуют в Object Inspector и в описании формы в PAS-файле, но их иконки отсутствуют в форме (design-time)? Дело в том, что наследники TFiled, такие как TStringField, TIntegerField и т.д. зарегистрированы не процедурой RegisterComponents, а процедурой RegisterNoIcon. Поэтому, хотя TField является наследником TComponent, его наследники не имеют иконок в форме в режиме дизайна. Вы можете использовать эту процедуру регистрации, если Вы хотите, чтобы Ваши компоненты не отображались в палитре компонент Delphi, но были доступны для вставки в форму и удаления из нее в режиме дизайна из редакторов свойств (Property Editor) или редакторов компонент (Component Editor) других компонент, присутствующих в форме. Именно так сделан редактор компонент TTable и TQuery - Fields Editor. ------------------------------------------------------------------------------- В BP 7.0 возможно было регулировать форму отображения величин в процессе отладки в окне ""Watch List"". Возможно ли такое в Delphi? Такой эффект можно достичь используя следующие спецификации формата отображения (практически совпадающие с BP 7.0), которые указываются через запятую после идентификатора инспектируемой величины:
|
|||
|
||||
StayAtHome |
|
||||||||||
![]() Домосед ![]() ![]() Профиль Группа: Участник Сообщений: 456 Регистрация: 26.1.2004 Где: Украина Репутация: 1 Всего: 16 |
Как определить, что текущая запись удаленная или нет
Аналог функции dBase DELETED()
Аналог функции dBase SET DELETED ON/OFF
------------------------------------------------------------------------------- Как востановить удаленые записи ддля dBase таблиц? Востановление удаленной записи. Аналог функции dBase RECALL После востановления требуется вызов метода Table.Refresh
------------------------------------------------------------------------------- Как получить номер физической записи для dBase таблиц Получение номера физической записи. Аналог функции dBase RECNO()
Автор:Alexander Petrushev (2:5001/88.10) Способ 2 На самом деле есть более простой способ (запрет на SC_CLOSE), но я уже деталей его не помню. Автор:Akzhan Abdulin (2:5040/55) Способ 3
------------------------------------------------------------------------------- Как убрать всплывающие подсказки в TreeView? TCustomTreeView.WMNotify. О том, что такое тип notify'а TTM_NEEDTEXT пpочтешь в хелпе. Убpать хинты можно, пеpекpыв обpаботчик для этого уведомительного сообщения. Автор:Eugene Mayevski [email protected] (2:463/209.209) |
||||||||||
|
|||||||||||
StayAtHome |
|
||||||
![]() Домосед ![]() ![]() Профиль Группа: Участник Сообщений: 456 Регистрация: 26.1.2004 Где: Украина Репутация: 1 Всего: 16 |
Замеченные недочеты]
- В разделе "Системные функции и WinAPI/Windows/Звук/Как можно получить звук с микрофона" есть тема "Пример работы с DrawIcon(Ex)" - Частичный дубляж:
-------------------------------------------------------------------------------- Как сделать пункт " по умолчанию" в Pop-Up меню выделенным ?] Устанавливается пункт " по умолчанию" в любом меню функцией
подробности - в Win32 SDK документации. Пункт "По умолчанию" не влияет на работу меню - это чисто интерфейсное выделение пункта меню полужирным (bold) шрифтом. -------------------------------------------------------------------------------- |
||||||
|
|||||||
StayAtHome |
|
||||
![]() Домосед ![]() ![]() Профиль Группа: Участник Сообщений: 456 Регистрация: 26.1.2004 Где: Украина Репутация: 1 Всего: 16 |
Как поместить ProgressBar на StatusBar.
Есть два принципиально разных решения. Первый вариант - это сделать все " вручную" . Здесь создается Bitmap с текстом (возможно любое изображение). Чтобы нарисовать светлую часть полосы, достаточно скопировать кусок Bitmap на StatusBar, а чтобы нарисовать темную часть полосы, нужно скопировать кусок Bitmap с инвертированием. При этом фон станет темным, а текст светлым. Реализация ясна из самой программы. Второй вариант более простой в реализации, но и менее функциональный. StatusBar является наследником TWinControl, а следовательно, на нем можно разместить еще какие-то компоненты. Но сделать это можно только динамически (непосредственно из программы). На StatusBar помещается компонент ProgressBar, вначале невидимый. Когда в нем появляется необходимость, его нужно сделать видимым и начать изменять свойство Position. Из этого примера хорошо видны некоторые достоинства и недостатки объектов. Если у Вас Delphi3, то строчка pb.Smooth := true; работать не будет. На сайте выложена версия программы с заменой этой строчки. Впрочем, ее можно просто удалить - принципиально это ничего не изменит. Скачать все необходимые для компиляции файлы проекта можно на program.dax.ru. Способ 1
-------------------- Способ 2
Все советы и замечания, пожалуйста, присылайте на [email protected] Даниил Карапетян. Это сообщение отредактировал(а) StayAtHome - 10.2.2004, 02:10 |
||||
|
|||||
StayAtHome |
|
|||
![]() Домосед ![]() ![]() Профиль Группа: Участник Сообщений: 456 Регистрация: 26.1.2004 Где: Украина Репутация: 1 Всего: 16 |
Алгоритм распо§нования кодировки нужен для автоматического декодирования текста.
Этот алгоритм основан на том, что некоторые буквы русского алфавита встречается очень часто, а некоторые редко. Поскольку этот способ статистический, то лучше всего он работает с большими текстами.
|
|||
|
||||
Cashey |
|
|||
![]() Бессмертный ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3441 Регистрация: 13.11.2002 Где: в столице Репутация: 2 Всего: 60 |
Я что-то не понял у нас теперь FAQ в виде постов оформляется?
-------------------- библия учит любить ближнего, а камасутра обучает как именно |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Общие вопросы" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |