Вопрос № 17208: Привет Всем!!КАк можно узнать что играется в winampe(нужно чтобы название песни вставлялось в чат..или хотябы копировалось в в буфер обмена) ? Ядумаю, надо брать заголовок окна плеера...Как? Если есть, то скиньте на мыло пример пожалста!!!Спасибо!!!<...Вопрос № 17221: Здравствуйте, Эксперты! Вот возникла такая задача: есть форма на которой расположен StringGrid, в котором есть какие-то данные, весь он не помещается - есть
полосы прокрутки. Мне надо сохранить в виде изображения всё, что находится в StringGrid.Пробо...Вопрос № 17230: Доброго всем времени суток!
Возникла проблема: есть программа, которая создает некие записи типа record с кучей полей. Для вывода на печать использую стандартный EXCEL. Любая информация спокойно встает в нужную ячейку кроме графики (формат JPEG)....Вопрос № 17242: Здраствуйте Эксперты. В моей программе есть процедура которая на входе получает два массива чисел, выполняет построковое сложение (x1+y1=z1, x2+y2=z2....) и выводит результат в мемо. Данную процедуру я использую одновременно в трех
потоках. Так вот м...
Вопрос № 17208
Привет Всем!!КАк можно узнать что играется в winampe(нужно чтобы название песни вставлялось в чат..или хотябы копировалось в в буфер обмена) ? Ядумаю, надо брать заголовок окна плеера...Как? Если есть, то скиньте на мыло пример пожалста!!!Спасибо!!!
Отправлен: 19.02.2005, 15:11
Вопрос задал: *RC*Formatter (статус: Посетитель)
Всего ответов отправлено: 2
Отвечает: CJ
Здравствуйте, *RC*Formatter!
Используй функции GetDC и FindWindow.
Ответ отправил: CJ (статус: Студент)
Отправлен: 19.02.2005, 19:11
Отвечает: John Freeman
Здравствуйте, *RC*Formatter!
Можно ещё проще, с помощью gen_np например или gen_dde
Ответ отправил: John Freeman (статус: Специалист)
Отправлен: 19.02.2005, 19:16
Вопрос № 17221
Здравствуйте, Эксперты! Вот возникла такая задача: есть форма на которой расположен StringGrid, в котором есть какие-то данные, весь он не помещается - есть полосы прокрутки. Мне надо сохранить в виде изображения всё, что находится в StringGrid.Пробовал через канву, но сохраняется только видимая часть. Пожалуйста подкиньте идею.
В приложении мой вариант с канвой
Приложение:
Отправлен: 19.02.2005, 20:11
Вопрос задал: boss (статус: Посетитель)
Всего ответов отправлено: 3
Отвечает: Sh-st
Здравствуйте, boss!
Попробовал и через CopyRect-результат тот же.
Могу порекомендовать следующее: пройтись по всем ячейкам и вручную все нарисовать. (берем ячейку смотрим:если она фиксированная-один цветб,если нет-другой;рисуем на bitmap'e текст ячейки). Вообщем всё вручную.
Ответ отправил: Sh-st (статус: 1-ый класс)
Отправлен: 19.02.2005, 20:48
Отвечает: Bob Johnson
Здравствуйте, boss!
Попробуй перед сохранением сделать stringgrid невидимым, увеличить его размеры до таких, чтобы все помещалось без скроллбаров, отрисовать его, сохранить файл, вернуть прежние размеры и сделать его снова видимым.
Ответ отправил: Bob Johnson (статус: Академик)
Отправлен: 19.02.2005, 21:50
Отвечает: Гриценко Юрий Алексеевич
Здравствуйте, boss!
Напрямую ты этого никак не сделаешь, т.к. невидимая часть автоматически отсекается при прорисовке. Единственный явный выход выгребать данные из грида и самому рисовать на битмап!
Доброго всем времени суток!
Возникла проблема: есть программа, которая создает некие записи типа record с кучей полей. Для вывода на печать использую стандартный EXCEL. Любая информация спокойно встает в нужную ячейку кроме графики (формат JPEG). Можно ли в принципе отправить из Дельфи в EXCEL графику и поставить ее (если можно) в нужное место листа. Если да, то как это сотворить или где подглядеть.
С уважением, Марков Андрей.
Отправлен: 20.02.2005, 01:13
Вопрос задал: Марков Андрей (статус: Посетитель)
Всего ответов отправлено: 2
Отвечает: Гриценко Юрий Алексеевич
Здравствуйте, Марков Андрей!
А зачем пользовать эксель для печати? Сам печататай что тебе надо и как тебе надо из кода программы!
Отвечает: sir henry
Здравствуйте, Марков Андрей!
Не совсем уверен, но может быть Вам подойдет метод:
expression.AddPicture(FileName, LinkToFile, SaveWithDocument, Left, Top, Width, Height)
В справке по VBA есть пример:
Set myDocument = Worksheets(1)
myDocument.Shapes.AddPicture(
"c:microsoft officeclipartmusic.bmp", _
True, True, 100, 100, 70, 70);
Также у Worksheet есть метод Paste, т.е. вставка чего-либо из клипборда:
Worksheet.Paste(диапазон_куда_вставлять, обычно_False);
Если не указывать диапазон, то вставляется в текущую (активную) ячейку.
Ответ отправил: sir henry (статус: Профессор)
Отправлен: 23.02.2005, 07:28
Вопрос № 17242
Здраствуйте Эксперты. В моей программе есть процедура которая на входе получает два массива чисел, выполняет построковое сложение (x1+y1=z1, x2+y2=z2....) и выводит результат в мемо. Данную процедуру я использую одновременно в трех потоках. Так вот меня интересует возможно ли использовать одну процедуру во всех потоках, если да то не перемешаются ли результаты сложения, или для каждого потока нужно писать отдельную проц.
С уважением.
Отправлен: 20.02.2005, 13:29
Вопрос задал: Ярослав (статус: Посетитель)
Всего ответов отправлено: 3
Отвечает: Boriss
Здравствуйте, Ярослав!
Конечно могут мешать, но все будет зависеть от реализации. Общим правилом является: для каждого потока готовьте свою копию данных. Иначе, Вы не сможете использовать всю мощь их (они, или кто-то еще, должны следить за возможным проявлением деятельности каждого ... А сколько их таких может быть?)
То есть, решение - класс. Процедуры одинаковые, но разные ...
По-моему, очень понятно выразился .... ;))
Ответ отправил: Boriss (статус: Профессионал)
Отправлен: 21.02.2005, 09:29 Оценка за ответ: 5
Отвечает: Bob Johnson
Здравствуйте, Ярослав!
Конечно возможно. Надо только обращать внимание на:
1. Использование глобальных переменных (они будут общими во всех потоках и может потребоваться синхронизировать доступ к ним с пом-ю каких-либо дополнительных средств.
2. Вызов каких-либо внешних процедур, например, TMemo::Add (или что там). Вызовы надо делать из того потока, который отвечает за UI. Это возможно реализовать с помощью отправки сообщений или методом Synchronize.
Ответ отправил: Bob Johnson (статус: Академик)
Отправлен: 22.02.2005, 01:40 Оценка за ответ: 5
Отвечает: Гриценко Юрий Алексеевич
Здравствуйте, Ярослав!
Нет, ничего не перемешается, только если ты не используешь глобальных переменных, а передаёш массивы в функцию(не говори мне, что ты не умеешь передавать параметры при создании нового потока).