แถบความคืบหน้าสำหรับเค้าโครง JGraphX

เป็นไปได้ไหมที่จะใช้แถบความคืบหน้าที่มี mxIGraphLayout ฉันมีกราฟที่ใช้เวลาในการจัดวางแบบไม่สำคัญ และฉันอยากให้ผู้ใช้เห็นว่า ใช่ มีบางอย่างเกิดขึ้น

ตามหลักการแล้ว ฉันต้องการบางสิ่งบางอย่างที่ฉันสามารถตีความได้ (แม้จะคร่าวๆ) ว่าเป็นเปอร์เซ็นต์ที่ทำเสร็จแล้ว แต่ดูเหมือนจะไม่มีวิธีเพิ่มผู้ฟังที่ถูกเรียกระหว่างเค้าโครงด้วยซ้ำ

หากเป็นเรื่องสำคัญ ฉันกำลังใช้ mxOrganicLayout แต่อาจมีการเปลี่ยนแปลงในอนาคต


person Troy Daniels    schedule 07.11.2013    source แหล่งที่มา


คำตอบ (1)


สามารถทำได้บางส่วนโดยขยาย mxOrganicLayout และแทนที่วิธีการต่อไปนี้

    @Override
    public void execute(Object cell)
    {
        progress.setProgress(0);
        try
        {
            super.execute(cell);
        }
        finally
        {
            progress.setProgress(maxIterations);
        }

    }

    @Override
    protected void performRound()
    {
        progress.setNote("Iteration " + iteration);
        progress.setProgress(iteration);
        super.performRound();
    }

    final ProgressMonitor progress;

แน่นอนว่าคุณต้องตั้งค่า progress ณ จุดใดจุดหนึ่งด้วย execute แจ้งผู้ตรวจสอบความคืบหน้าว่าการดำเนินการได้เริ่มต้นแล้ว และปิดเมื่อดำเนินการเสร็จสิ้น

performRound ถูกเรียกให้ทำการอัปเดตจริง ดังนั้นการเพิ่มความคืบหน้าจะทำให้แถบความคืบหน้าก้าวหน้าไป

person Troy Daniels    schedule 19.11.2013