2010-06-29 3 views
0

그래서 하위 폼 하나에 차트 개체가 하나만 있습니다. 그 작은, 그리고 이것은이 하위의 유일한 목적입니다. 그 다음에는 각각 약 10 개의 폼이 있는데, 각각의 폼에는 하위 폼이있는 하위 창이 있습니다. UNION 쿼리를 사용하여 비교를 위해이 차트가있는 각 양식의 현재 계정 10 개를 보여줍니다. 하나의 작은 것을 제외하고는 모두 잘 작동합니다 ...MS Access 2003/2007 - 부모 폼이로드 될 때로드되지 않는 하위 폼의 차트 개체

이러한 양식 중 하나를 열면 마우스를 실제 하위 창으로 가져 가서 그 내부를 클릭하여 표시 할 차트를 가져와야합니다. 일단 당신이 그것을 잘하면, 모든 형태로,하지만이 동일한 문제는 이러한 모든 양식에 다시 반복, 그래서 내가 뭔가를 여기에 놓치고 확신합니까 ??

이것에 대한 아이디어가 있으십니까?

덕분에 저스틴

+0

짐작 하시겠습니까? 이벤트를로드 할 때 양식의 하위 다시 그리기를 시도 했습니까? – Fionnuala

+0

Repaint가 어떤 작업을 수행 할 지 확실하지 않은 경우 - Refresh. 또는 그래프 개체를 다시 쿼리해야 할 수도 있습니다 (10 년 전에 MS Graph를 포기했기 때문에 Requery 메서드가 있는지 모르겠습니다). –

+0

예. me.Chart.requery (차트는 OLE 개체의 이름 임)를 시도했습니다. 작동하지 않았다. funnny ... 하위 창 영역을 클릭 한 다음 다른 것을 클릭하면 모든 인스턴스에 나타납니다. 그래서 초점을 맞추려고했는데, 그 다음에 객체를 벗어나려고했지만 부모 형태로했습니다. 그래서 그 컨트롤이 실제로 하위 폼에 있기 때문에 정확히 무엇을 .chart.setfocus를 사용하는지 모르겠습니다. 나는 형식을 시도했다! subform.chart ... 그것을 할 수 없다. 나는 나를 시험해 보았다! subform.chart.setfocus, 그리고 그것도 작동하지 않는다 ..... 기본적으로 찌르기를 취하고 있었다. – Justin

답변

1

난 당신이 하위 폼을 사용하여 하지에 의해이 문제를 해결할 수 있다고 생각하지만, 오히려 차트 컨트롤은 직접 형태로 삽입. 모든 폼에서 차트 컨트롤을 디자인하는 것이 골칫 덩이가 될 수 있지만,이를 통해 차트의 데이터 소스를 다른 폼과는 별도로 직접 제어 할 수 있습니다.

예 :

난 당신이 텍스트 상자 (txtExample)를 업데이트 한 후 차트를 업데이트해야한다고 가정합니다. 당신은 afterUpdate 이벤트를 USINT 컨트롤의 데이터 소스를 변경할 수 있습니다 :

Private Sub txtExample_AfterUpdate() 
    chart1.RowSource = "SELECT ... FROM ..." 
    chart1.Requery 
End Sub 

차트 개체의 RowSource 속성을 변경하고 텍스트 상자의 값이 업데이트 될 때마다 업데이트됩니다. 당신이

+0

SQL의 동적 할당을 허용하는 MS-Graph의 버전은 무엇입니까? 10 년 넘게 MS-Graph에 대해 망설이지는 않았지만 문제는 SQL을 런타임에 변경하여 변경하기 위해 자주 저장된 QueryDef를 편집해야한다는 것이 아니라는 것입니다. 차트가 기반으로 한 데이터 그러나 물론 - 필자는 잘못 리트리 언하거나 MS- 그래프의 최신 버전이 더 많은 유연성을 허용 할 수 있습니다. –

+0

@David ... 음, 허용하는 모든 버전에 대해서는 잘 모르겠지만 2003 년과 아마도 2007 년까지도 할 수 있다는 것을 알고 있습니다. 위의 메서드 (일종의) 값을 폼에서 사용하는 차트가 포함 된 보고서가 많은 경우 행 원본과 보고서가 열릴 때 전달됩니다. 나는이 모든 형태에서 본질적으로 똑같은 차트이기 때문에이 방식을 다르게 할 수 있기를 바랬습니다. 그래야 차트를 사용하여 하위 양식을 만들어 일부 노력을 덜 수 있습니다. 그러나 그것이 단지 약 10의 형태 일 뿐이라면, 나는이 길로 갈 수 있다고 생각한다. 내가 그 보고서에 위의 .rowsource 방법을 사용하지만 ... – Justin

1

나는이 문제에 대해 주위를 둘러 보았다 및 me.graph1.requery 내 2003 버전에 도움이되지 않는 것으로 나타났습니다에 대한

희망이 작동합니다. 필자는 절망에 빠지게하려고 시도했다. docmd.requery (Graph1)이 충돌 할 때마다 을 넣을 때마다 그래프가 표시된다! 진정한 마이크로 소프트 스타일 나는 버그가있는 다른 것을 수정하려고한다.