Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.07.22;
Скачать: [xml.tar.bz2];

Вниз

Email в гриде.   Найти похожие ветки 

 
Kyt   (2002-07-11 10:59) [0]

Господа, подскажите, пожалуйста, как грамотнее организовать следующее. В колонке грида(среди прочего) может находиться email.
Как грамотно его подчеркнуть(подсветить) и открыть OutLook.
Заранее спасибо.


 
Skier   (2002-07-11 11:15) [1]

>Kyt


> Как грамотно его подчеркнуть(подсветить)


Нужно написать обработчик OnDrawCell


 
Skier   (2002-07-11 11:29) [2]

>Kyt

);
> и открыть OutLook.



Можно так :



uses ShellAPI;

procedure TForm1.Button1Click(Sender: TObject);
var
FUrl : String;
begin
FUrl := "mailto:adress@mail.ru";
ShellExecute(GetDesktopWindow(), "Open", PChar(Trim(FUrl)),
nil, nil, SW_SHOWNORMAL);
end;


 
still   (2002-07-11 11:38) [3]

Если ты знаешь, в какой колонке находится e-mail, причем кроме адреса в ячейке ничего нет, то обрабатывай OnMouseMove, переводи координаты мыши в номер ячейки и меняй шрифт в OnDrawCell.
Если в ячейке может находится еще что-то, то тут сложнее (думать надо).
Outlook запустить можно API-функцией ShellExecute
ShellExecute(0, Pchar("open"), Pchar("mailto:aaa@aaa.ru"), nil, nil, SW_MAXIMIZE);
Запустится почтовая программа по умолчанию.


 
Kyt   (2002-07-11 14:11) [4]

Спасибо за ответы. Остались у меня проблемы. Как перевести координаты мыши в номер ячейки??

Я на событие DrawColumnCell пытаюсь менять цвет, но меняетс цвет всей строки. Как достучаться до цвета ячейки?


 
Skier   (2002-07-11 14:14) [5]

>Kyt
А кстати, грид-то какой ? Какой класс ???


 
Kyt   (2002-07-11 14:17) [6]

TCustomGrid


 
Skier   (2002-07-11 14:30) [7]

>Kyt

TCustomGrid.DrawCell - абстрактный метод !

тебе нужно убрать слово abstract и
написать реализацию метода


> Как перевести координаты мыши в номер ячейки??


Зачем ?


 
Kyt   (2002-07-11 14:44) [8]

Имею событие:
MouseMove(Sender: TObject;
Shift: TShiftState; X, Y: Integer);
Как определить нахожусь над нужной ячейкой или нет?


 
Skier   (2002-07-11 14:51) [9]

>Kyt
Если ты "ковыряешь" TCustomGrid, то смотри TCustomGrid.MouseMove
Там есть такой код :

var
CellHit: TGridCoord;
..........
CalcDrawInfo(DrawInfo);
..........
CellHit := CalcCoordFromPoint(X, Y, DrawInfo);

А далее смотришь CellHit.X и CellHit.Y




 
Kyt   (2002-07-11 15:29) [10]

SOS!!

procedure gEmployerMouseMove(Sender: TObject;
Shift: TShiftState; X, Y: Integer);
var
coord: TGridCoord;
begin
coord := gEmployer.MouseCoord(X, Y);
if gEmployer.Columnscoord.x].Field.Name "qEmployerEMail"
then Cursor := crHandPoint;
end;

Как достучаться до цвета фонта? До ID записи на которой стоим?

С уважениемм!


 
Skier   (2002-07-11 16:05) [11]

>Kyt


> Как достучаться до цвета фонта?


Canvas.Brush.Color


> До ID записи на которой стоим?


Row


 
Kyt   (2002-07-11 16:58) [12]

Пролетая мышью над записью, нужно знать значение этого поля, для проверки на Valid. Как??


 
Skier   (2002-07-11 17:01) [13]

>Kyt
Cells[Col, Row]


 
Kyt   (2002-07-11 17:33) [14]

У меня TCustomGrid


 
Skier   (2002-07-11 17:39) [15]

>Kyt
Ааа... точно. Извини.

А как ты вообще собрался работать с TCustomGrid у него
же нет ничего для работы со строками ?

Тогда уж "тащи" в TCustomGrid всё что нужно для
работы со строками из TStringGrid




Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2002.07.22;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.004 c
7-70945
_toltec
2002-04-30 01:46
2002.07.22
Сервис и MySql


1-70710
Андрусь
2002-07-09 13:11
2002.07.22
Объясните принципиальное отличие


3-70670
kravchuk@torba.com
2002-06-27 16:00
2002.07.22
MS OLAP


3-70661
AlexF
2002-07-02 10:32
2002.07.22
IBX vs. FIBPlus


7-70932
KPV-10k
2002-04-25 22:27
2002.07.22
Копирование самого себя...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский