Вопрос № 132048: Господа Программисты.
такой вопрос: у меня есть два компонента (DBCheckBox1 и Button1) нужно сделать, чтоб когда DBCheckBox1 в true кнопка была утоплена (ну чтоб её нельзя было нажать)...Вопрос № 132071: Здравствуйте уважаемые эксперты.
Подскажите как из Delphi в Word`е сделать замену....Вопрос № 132158: Прівет експерти.
1. Как мне отследить изменения файлов на всех дисках, которие производит пользователь, системние изменения нада отсеять.
2. Как отследить роботу с флешками (подключения,отключения,запись).
3. Как в DBGrid сделать автоподг...Вопрос № 132162: Как достать картинку из кеша TWebbrowser. Смысл такой. В Webbrowser показывается картинка (captcha) хотелось бы ее вывести в TImage. Вопрос: как это сделать? Делать запрос по src картинки не пройдет. Сгенерится новая картинка, а нужна старая....Вопрос № 132188: Здравствуйте! Вот вроде бы обычная ситуация с копированием файлов, а возникли трудности. Необходимо скопировать
файл на рабочий стол текущего юзера. Проблема в том что нужный путь ни как не определяется. Посмотрите пожалуйста....
Вопрос № 132.048
Господа Программисты.
такой вопрос: у меня есть два компонента (DBCheckBox1 и Button1) нужно сделать, чтоб когда DBCheckBox1 в true кнопка была утоплена (ну чтоб её нельзя было нажать)
Отправлен: 13.04.2008, 19:36
Вопрос задал: Clown-Vika (статус: Посетитель)
Всего ответов: 4 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Marked One
Здравствуйте, Clown-Vika!
В обработчик события OnClick у DBCheckBox1'а введите это:
Button1.Enabled:=not DBCheckBox1.Checked;
Ответ отправил: Marked One (статус: 8-ой класс)
Ответ отправлен: 13.04.2008, 19:57 Оценка за ответ: 3 Комментарий оценки: спосибо
Отвечает: Esi
Здравствуйте, Clown-Vika!
Это делается очень просто. Нужно для DBCheckBox1 в событие OnChange написать такие строки:
If DBCheckBox1.checked then Button1.visible=true
else Button1.visible=false; // в этом случае кнопка станет невидимой.
или по другому:
If DBCheckBox1.checked then Button1.enabled=true
else Button1.enabled=false; // в этом случае кнопка станет серой и ни на какие нажатия реагировать не будет.
Удачи!
Ответ отправил: Esi (статус: 3-ий класс)
Ответ отправлен: 13.04.2008, 20:03 Оценка за ответ: 5 Комментарий оценки: Спосибо большое
Отвечает: Drbear
Здравствуйте, Clown-Vika!
В дополнение к предыдущим ответам.
Если Вам нужна именно утопленная кнопка, попробуйте использовать TSpeedButton с свойством GroupIndex установленном в любое значение больше 0 (например 1).
Пример кода в приложении. На форме Button, SpeedButton и DBCheckBox. В этом варианте при DBCheckBox1.Checked = False SpeedButton можеть находиться в отжатом и нажатом состоянии, а при DBCheckBox1.Checked = True - только в нажатом.
Приложение:
Ответ отправил: Drbear (статус: 9-ый класс)
Ответ отправлен: 13.04.2008, 20:26 Оценка за ответ: 4
Отвечает: Genia007
Здравствуйте, Clown-Vika!
Насколько мне известно простую кнопку нельзя сделать утопленной.
А чтобы кнопку нельзя было нажать нужно написать:
If DBCheckBox1.Checked = True then
Button1.Enabled:= False
else
Button1.Enabled:= True;
Ответ отправил: Genia007 (статус: 7-ой класс)
Ответ отправлен: 14.04.2008, 14:05
Вопрос № 132.071
Здравствуйте уважаемые эксперты.
Подскажите как из Delphi в Word`е сделать замену.
Отвечает: Coupler
Здравствуйте, Коробин Алексей Игумнович!
В приложении функция (используется запуск word и взаимодействие с ним через OLE) и пример ее использования.
Приложение:
Ответ отправил: Coupler (статус: Специалист)
Ответ отправлен: 14.04.2008, 05:13 Оценка за ответ: 5 Комментарий оценки: Большое спасибо. Очень помогло.
Вопрос № 132.158
Прівет експерти.
1. Как мне отследить изменения файлов на всех дисках, которие производит пользователь, системние изменения нада отсеять.
2. Как отследить роботу с флешками (подключения,отключения,запись).
3. Как в DBGrid сделать автоподгон ширини столбцов по содержимому.
4. Как із програмы без окна(процеса) получить заголовок всех окон програм запущеных в системе.
Всем зарания благодарен.
Отвечает: SHERRY
Здравствуйте, Мельник Виктор !
Почитайте вопрос #131328
--------- Самурай без меча подобен самураю с мечём, только без меча..
Ответ отправил: SHERRY (статус: 9-ый класс)
Ответ отправлен: 14.04.2008, 16:17
Вопрос № 132.162
Как достать картинку из кеша TWebbrowser. Смысл такой. В Webbrowser показывается картинка (captcha) хотелось бы ее вывести в TImage. Вопрос: как это сделать? Делать запрос по src картинки не пройдет. Сгенерится новая картинка, а нужна старая.
Отправлен: 14.04.2008, 16:00
Вопрос задал: Selax (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Sosedov A.I.
Здравствуйте, Selax!
Если Source картинки Вам известен, то предлагаю следующий способ.
1. Создайте форму, поместите на нее:
Edit1: TEdit (Source картинки)
LB: TListBox (для наглядности)
Button2: TButton.
2. Добавьте в uses WinInet.
3. Обработчик Button2 вставьте из приложения.
Вначале поэкспериментируйте. Пусть Edit1.Text:='.ru'. Посмотрите после нажатия Button2 на список. Вы увидите в нечетных строках URL сайтов, а в четных - полный путь и имена файлов кэшированных элементов. В именах файлов присутствуют квадратные скобки и номер внутри. Чем больше номер, тем новее файл.
Теперь пусть Edit1.Text:='www.source.of.my.image.ru/filename.gif'. Нажмите кнопку. Ищите в списке имя самого свежего файла. Работайте с ним.
Есть еще идея. Подумайте, нужен ли вообще TWebBrowser? Может, проще просто загружать картинку по ее URL? В таком случае ее не нужно искать в кэше.
Приложение:
Ответ отправил: Sosedov A.I. (статус: 5-ый класс)
Ответ отправлен: 18.04.2008, 11:15 Оценка за ответ: 5 Комментарий оценки: Спасибо. Я бы отказался от TWebBrowser, но тогда нужно самому принимать куки и код формы авторизации.
Вопрос № 132.188
Здравствуйте! Вот вроде бы обычная ситуация с копированием файлов, а возникли трудности. Необходимо скопировать файл на рабочий стол текущего юзера. Проблема в том что нужный путь ни как не определяется. Посмотрите пожалуйста.
Приложение:
Отправлен: 14.04.2008, 19:03
Вопрос задал: Lammer (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Mishell
Здравствуйте, Lammer!
см. пример функции, которая возвращает путь к рабочему столу текущего пользователя в приложении
кстати откуда Вы копируете файл? из текущего каталога?
лучше все-таки задавать четкий путь, а то мало ли какой каталог будет в данный момент установллен как текущий...
т.е. примерно так:
var fname:string;
...
fname:=ExtractFilePath(ParamStr(0))+'file.txt'; // копируем из каталога программы
if fileexists(fname) // проверяем есть ли файл в указанном каталоге
then CopyFile(PAnsiChar(fname),GetDeskTopPath+ExtractFileName(fname),true);
Приложение:
Ответ отправил: Mishell (статус: 10-ый класс)
Ответ отправлен: 14.04.2008, 19:26 Оценка за ответ: 5
Отвечает: Drbear
Здравствуйте, Lammer!
Желательно указывать полное имя файла и, перед копированием, проверять, существует ли он.
Рабочий код в приложении. Указан исходный файл, лежащий в папке с программой.
Процедура GetEnvString вернет Вам значение любой системной переменной.
В процедуре ShortcutPatch при tipLnk = 1 - рабочий стол, 2 - меню программы, 3 - быстрый запуск. Если сходите по указанному пути (SoftwareMicroSoftWindowsCurrentVersionExplorerShell Folders) - найдете еще несколько системных папок. Если измение UAll на True - получите пути к общим каталогам.
Надеюсь, помог Вам.
Приложение:
Ответ отправил: Drbear (статус: 9-ый класс)
Ответ отправлен: 14.04.2008, 19:43 Оценка за ответ: 5