안냐셔염.,..^_^
전번에도 올렸는데... 초보다보니.. 머르는게 많아서리..
고수님덜의 도움이 필요해서 올립니다.
procedure TPUMO0001Form.AdvGridDrawCell(Sender: TObject; ACol,
ARow: Integer; Rect: TRect; State: TGridDrawState);
var
Save_OldAlign : word;
TW : integer;
begin
With AdvGrid.Canvas Do Begin
If (ARow = 0) Then Begin //타이틀 중앙정렬
FillRect(Rect);
TW := TextWidth(AdvGrid.Cells[ACol, ARow]);
TextOut((Rect.Left + Rect.Right - TW) div 2, Rect.Top+5, AdvGrid.Cells[ACol,ARow])
End
Else Begin
If (Trim(AdvGrid.Cells[0,ARow]) = '지역별계') Then Begin //지역별계 라인색깔변경
Font.Style := Font.Style + [fsBold];
Font.Color := clBlack;
Brush.Color := $00E1FFFF;
// TextRect(Rect, Rect.Left+2, Rect.Top+5, AdvGrid.Cells[ACol, ARow]);
End;
If (ACol > 1) AND (ACol < 19) Then Begin //숫자 오른쪽정렬
Save_OldAlign := SetTextAlign(Handle, TA_RIGHT);
TextRect(Rect, Rect.Right-2, Rect.Top+2, AdvGrid.Cells[ACol,ARow]);
SetTextAlign(Handle, Save_OldAlign);
End;
숫자 오른쪽정렬이라고 한부분이 숫자뿐만아니라 데이타까지 오른쪽 정렬이
되어버립니다...
여기를 어케해야되는건지..
숫자는 오른쪽 정렬이고요..
데이타는 왼쪽정렬을 하려고 하거든요...
알려주셔염..^_^
어널하루두 존하루 존시간 보내시구요^__^
즐코딩하세요^^
안냐세염 ~~ ^^*
음..냐뤼... 흐흐흥....
어드밴스 그리드 쓰시는거져.???
그거 정렬이벤트라는곳에있는뎁.....
조건에 맞는 col 만 정렬하는...
어디 보자..소스가..
// ONGETALIGNMENT 이벤트에 넣는다.
If (ARow = 0) or (ACol in [0,3,5,6]) then AAlignment := taCenter
Else If Acol = 7 then AAlignment := taRightJustify;
^^ 이런 시그로...
만약 저라면..
숫자니까.. 데이타 형검사해서.. 처리하겠네요..
예외처릴 이용하면
gubun := 1;
try
aa := strtoint('데이타값');
익스퍼트(스펠링 기억이 ㅡㅡ;;)
gubun := 2;
end;
이건 무슨 소스냐..
스트링을 인티져로 변환 하면 잘변환이되었다면..
숫자형일것이고..
에러뜨면 문자겠지요..
그럴땐 gubun 에 2가 들어가니
2일댄 문자로 처리 해주시면데고
1일땐 ...인티져로 쳐리해주시면대겠슴당..
꾸벅... 아..이러케 하면 안좋은게..
디버깅할때 짜증나죠.. 다른 방법은 책에나와있는 쉬운방법입니다..
데이타 형 검사하는거. ^^*
찾아보시면 나올듯~~
그럼..~~
허접답변이였습니다...
꾸벅.... 언제나 비를 기다리는 바보감자가 올림..